xf86-video-intel: src/sna/sna_composite.c

Chris Wilson ickle at kemper.freedesktop.org
Thu Mar 22 04:23:28 PDT 2012


 src/sna/sna_composite.c |   12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

New commits:
commit 86121a3af9a9fc9a2c76d7ac9f3ec17105d20d80
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Thu Mar 22 11:21:43 2012 +0000

    sna: Adjust the damage region for the composite offset
    
    References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_composite.c b/src/sna/sna_composite.c
index e5031c0..d281776 100644
--- a/src/sna/sna_composite.c
+++ b/src/sna/sna_composite.c
@@ -487,9 +487,19 @@ sna_composite(CARD8 op,
 	     get_drawable_dx(dst->pDrawable),
 	     get_drawable_dy(dst->pDrawable)));
 
-	if (op <= PictOpSrc)
+	if (op <= PictOpSrc) {
+		int16_t x, y;
+
+		get_drawable_deltas(dst->pDrawable, pixmap, &x, &y);
+		if (x|y)
+			pixman_region_translate(&region, x, y);
+
 		sna_damage_subtract(&priv->cpu_damage, &region);
 
+		if (x|y)
+			pixman_region_translate(&region, -x, -y);
+	}
+
 	memset(&tmp, 0, sizeof(tmp));
 	if (!sna->render.composite(sna,
 				   op, src, mask, dst,


More information about the xorg-commit mailing list