[cairo-commit] src/cairo-composite-rectangles.c

Andrea Canciani ranma42 at kemper.freedesktop.org
Thu May 13 00:32:37 PDT 2010


 src/cairo-composite-rectangles.c |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

New commits:
commit ee871940ffe229ed285e618566e45c7d28c5857c
Author: Andrea Canciani <ranma42 at gmail.com>
Date:   Thu May 13 01:54:39 2010 +0200

    Revert bd672d080ca0036ef1b88d26583e6af36f541461
    on src/cairo-composite-rectangles.c
    
    The extent of the operation can be larger than the source if
    the operator is not bounded by the source.
    
    Fixes clip-unbounded, operator-source, surface-pattern-operator

diff --git a/src/cairo-composite-rectangles.c b/src/cairo-composite-rectangles.c
index ccd8884..0aebee3 100644
--- a/src/cairo-composite-rectangles.c
+++ b/src/cairo-composite-rectangles.c
@@ -66,10 +66,9 @@ _cairo_composite_rectangles_init (cairo_composite_rectangles_t *extents,
     extents->is_bounded = _cairo_operator_bounded_by_either (op);
 
     _cairo_pattern_get_extents (source, &extents->source);
-    if (! _cairo_rectangle_intersect (&extents->bounded, &extents->source) &&
-	extents->is_bounded & CAIRO_OPERATOR_BOUND_BY_SOURCE)
-    {
-	return FALSE;
+    if (extents->is_bounded & CAIRO_OPERATOR_BOUND_BY_SOURCE) {
+	if (! _cairo_rectangle_intersect (&extents->bounded, &extents->source))
+	    return FALSE;
     }
 
     return TRUE;


More information about the cairo-commit mailing list