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

Chris Wilson ickle at kemper.freedesktop.org
Mon Sep 30 05:29:09 PDT 2013


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

New commits:
commit 1d6a9d4a422b351440df3496d3d6cdefa82ce6c3
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Sep 30 13:27:19 2013 +0100

    sna: Only reduce Over to Src if the rects do not overlap
    
    Similar to the previous commit, we have to allow overlapping OVER
    rectangles to be drawn one after another.
    
    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 668c244..c6d6d2d 100644
--- a/src/sna/sna_composite.c
+++ b/src/sna/sna_composite.c
@@ -838,7 +838,10 @@ sna_composite_rectangles(CARD8		 op,
 		}
 	}
 
-	if (op == PictOpOver && sna_drawable_is_clear(dst->pDrawable))
+	/* Avoid reducing overlapping translucent rectangles */
+	if (op == PictOpOver &&
+	    num_rects == 1 &&
+	    sna_drawable_is_clear(dst->pDrawable))
 		op = PictOpSrc;
 
 	DBG(("%s: converted to op %d\n", __FUNCTION__, op));


More information about the xorg-commit mailing list