From: Pekka Paalanen Date: Mon, 6 Feb 2012 10:16:07 +0000 (+0200) Subject: compositor: clear surface damage on draw X-Git-Tag: 20120702.1049~508^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c7b45f68e629dd5f92f10411f97bfa862a7baf5e;p=profile%2Fivi%2Fweston.git compositor: clear surface damage on draw Commit a0d6dc4f26c95ae08ffff7d5f1ee7c1f53bdf545 lost one line of code in the refactoring, and so did not reset the surface damage on repaint anymore. This causes damage to only accumulate, leading to a full display redraw every cycle and hiding damage tracking issues. Put the damage clear back. Signed-off-by: Pekka Paalanen --- diff --git a/src/compositor.c b/src/compositor.c index 3a26424..6b15a54 100644 --- a/src/compositor.c +++ b/src/compositor.c @@ -681,6 +681,9 @@ weston_surface_draw(struct weston_surface *es, struct weston_output *output) &output->region); pixman_region32_intersect(&repaint, &repaint, &es->damage); + /* Clear damage, assume outputs do not overlap. */ + pixman_region32_subtract(&es->damage, &es->damage, &output->region); + if (!pixman_region32_not_empty(&repaint)) goto out;