[cairo-commit] 2 commits - src/cairo-atsui-font.c

Anders Carlsson andersca at kemper.freedesktop.org
Mon Apr 10 10:33:03 PDT 2006


 src/cairo-atsui-font.c |    4 ++++
 1 files changed, 4 insertions(+)

New commits:
diff-tree 807f64d57c616e2ce8a61202cd9b59ac7a6a26cb (from parents)
Merge: 5ee26e3b0eec85ac2e9c07d828eae0c8e1a57364 732e06258c81427cf7fedfca98107e21244264eb
Author: Anders Carlsson <andersca at luminoth.local>
Date:   Mon Apr 10 19:32:47 2006 +0200

    Merge with git+ssh://git.cairographics.org/git/cairo

diff-tree 5ee26e3b0eec85ac2e9c07d828eae0c8e1a57364 (from bfd467453c5213341ae2c396ac3d32ba76df8de9)
Author: Anders Carlsson <andersca at luminoth.local>
Date:   Mon Apr 10 19:18:36 2006 +0200

    * Save and restore state when drawing glyphs using the short circuit.

diff --git a/src/cairo-atsui-font.c b/src/cairo-atsui-font.c
index 7aae7c8..6c9f715 100644
--- a/src/cairo-atsui-font.c
+++ b/src/cairo-atsui-font.c
@@ -576,6 +576,7 @@ _cairo_atsui_font_old_show_glyphs (void	
 	_cairo_pattern_is_opaque_solid (pattern) &&
 	op == CAIRO_OPERATOR_OVER;
 
+    can_draw_directly = FALSE;
     if (!can_draw_directly) {
 	rect.x = dest_x;
 	rect.y = dest_y;
@@ -604,6 +605,7 @@ _cairo_atsui_font_old_show_glyphs (void	
 	drawingContext = myBitmapContext;
     } else {
 	drawingContext = ((cairo_quartz_surface_t *)generic_surface)->context;
+	CGContextSaveGState (drawingContext);
     }
 
     ATSFontRef atsFont = FMGetATSFontRefFromFont(font->fontID);
@@ -687,6 +689,8 @@ _cairo_atsui_font_old_show_glyphs (void	
 					  destImageSurface,
 					  &rect,
 					  extra);
+    } else {
+      CGContextRestoreGState (drawingContext);
     }
 
     return CAIRO_STATUS_SUCCESS;


More information about the cairo-commit mailing list