From 547149a9c266496f84ac785d9632e4280405d631 Mon Sep 17 00:00:00 2001 From: Ander Conselvan de Oliveira Date: Wed, 12 Sep 2012 17:16:31 +0300 Subject: [PATCH] compositor: Accumulate obscured damage into the primary plane damage When accumulating damage in the surfaces into the primary plane damage, regions obscured by the opaque region would be excluded. This causes a bug when a redraw of a surface is obscured by an opaque surface on another plane. The drawing to the former surface is clipped but its damage is never added to the primary plane and is just lost. Moving the opaque window later reveals the not-up-to-date content below it. --- src/compositor.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/compositor.c b/src/compositor.c index 2afdd947..77583b92 100644 --- a/src/compositor.c +++ b/src/compositor.c @@ -847,7 +847,6 @@ surface_accumulate_damage(struct weston_surface *surface, surface->geometry.y - surface->plane->y); } - pixman_region32_subtract(&surface->damage, &surface->damage, opaque); pixman_region32_union(&surface->plane->damage, &surface->plane->damage, &surface->damage); empty_region(&surface->damage);