pixman: Branch 'master'

Søren Sandmann Pedersen sandmann at kemper.freedesktop.org
Wed Aug 4 06:41:59 PDT 2010


 pixman/pixman.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

New commits:
commit cc9221ce96c23f6d6f1a17d98e5221e3aeff6567
Author: Søren Sandmann Pedersen <ssp at redhat.com>
Date:   Wed Jul 28 03:17:35 2010 -0400

    If we bail out of do_composite, make sure to undo any workarounds.
    
    The workaround for an old X bug has to be undone if we bail from
    do_composite, so we can't just return.

diff --git a/pixman/pixman.c b/pixman/pixman.c
index 318226d..0333a40 100644
--- a/pixman/pixman.c
+++ b/pixman/pixman.c
@@ -742,7 +742,7 @@ do_composite (pixman_op_t	       op,
 	    &region, src, mask, dest,
 	    src_x, src_y, mask_x, mask_y, dest_x, dest_y, width, height))
     {
-	return;
+	goto out;
     }
     
     extents = pixman_region32_extents (&region);
@@ -759,7 +759,7 @@ do_composite (pixman_op_t	       op,
      */
     op = optimize_operator (op, src_flags, mask_flags, dest_flags);
     if (op == PIXMAN_OP_DST)
-	return;
+	goto out;
 
     lookup_composite_function (op,
 			       src_format, src_flags,
@@ -776,6 +776,7 @@ do_composite (pixman_op_t	       op,
 			  (mask_flags & FAST_PATH_SIMPLE_REPEAT),
 			  &region, func);
 
+out:
     if (need_workaround)
     {
 	unapply_workaround (src, src_bits, src_dx, src_dy);


More information about the xorg-commit mailing list