[cairo-commit] src/cairo-quartz-surface.c

Andrea Canciani ranma42 at kemper.freedesktop.org
Wed Feb 3 10:31:43 PST 2010

 src/cairo-quartz-surface.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit b1829a47bff2b03a850d4049f228d2a41e14d6bd
Author: Andrea Canciani <ranma42 at gmail.com>
Date:   Wed Feb 3 11:19:26 2010 +0100

    [quartz] Unbreak mask fallback path
    _cairo_quartz_surface_paint will never fail as it falls back to image
    when CoreGraphics can't handle the requested operation. This means that
    upon fallback the ClipImage set by the masking code gets ignored, thus
    the mask fallback path is broken. Using the _cg function ensures that
    masking is either completely done by CoreGraphics, or the fallback path
    passes the mask operation to image.

diff --git a/src/cairo-quartz-surface.c b/src/cairo-quartz-surface.c
index 3efd8b4..0fa4d30 100644
--- a/src/cairo-quartz-surface.c
+++ b/src/cairo-quartz-surface.c
@@ -2524,7 +2524,7 @@ _cairo_quartz_surface_mask_with_surface (cairo_quartz_surface_t *surface,
     CGContextSetCTM (surface->cgContext, ctm);
-    status = _cairo_quartz_surface_paint (surface, op, source, clip);
+    status = _cairo_quartz_surface_paint_cg (surface, op, source, clip);
     CGContextRestoreGState (surface->cgContext);

More information about the cairo-commit mailing list