Skip to content

clutter/stage-cogl: Check for buffer age early

Jonas Dreßler requested to merge verdre/mutter:fix-black-monitors into master

Fix a regression that got introduced with c483b52d where we started passing the redraw_clip to paint_stage() instead of creating a temporary view_region for unclipped redraws: In case we detect an invalid buffer age, we fall back to doing an unclipped redraw after we passed the first check setting up may_use_clipped_redraw. That means we didn't reset the redraw_clip to the view_rect, and we're now going to redraw the stage using the original redraw clip even though we're swapping the full framebuffer without damage.

To fix that, check for the buffer age before setting up the fb_clip_region and the redraw_clip and set may_use_clipped_redraw to FALSE if the buffer age is invalid, too. This ensures the redraw_clip is always going to be correctly set to the view rect when we want to force a full redraw.

Fixes #1128 (closed)

Edited by Jonas Dreßler

Merge request reports