From: Ander Conselvan de Oliveira <[email protected]>

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 840a2a9..04c9be8 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);
-- 
1.7.9.5

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to