The right solution is to remove the gdibrush and logbrush fields from GpBrush, and generate the HBRUSH as needed in brush_fill_path. Note that brush_fill_path will only be called for solid and hatch brushes (those for which brush_can_fill_path returns true), so we don't need the code to create a gdi brush for the other types.