GNOME Bugzilla – Bug 720630
window-actor: Remove suspicious optimization
Last modified: 2013-12-19 00:09:55 UTC
See patch. This is something I found when looking into the surface-content stuff. Ideally, get_paint_volume() should be pure. This does mean that the unobscured region is unbounded to the window contents, but I cannot find any way that this would matter for our intents and purposes.
Created attachment 264435 [details] [review] window-actor: Remove suspicious optimization Calling get_paint_volume() should not modify internal state.
Review of attachment 264435 [details] [review]: ::: src/compositor/meta-window-actor.c @@ -723,3 @@ - if (priv->unobscured_region) - cairo_region_intersect_rectangle (priv->unobscured_region, &bounds); This code is not doing what it is intended to do (not sure how no one noticed that). The idea was to limit bounds to the area that intersects with the unobscured region not to modify the unobscured region itself. So feel free to either fix it or simply removing it.
Created attachment 264509 [details] [review] window-actor: Fix optimization in get_paint_volume We need to clip the paint volume to the unobscured region, not the other way around...
Review of attachment 264509 [details] [review]: LG.
Attachment 264509 [details] pushed as ef2b6e7 - window-actor: Fix optimization in get_paint_volume