[cairo-commit] cairo/src cairo_ft_font.c, 1.36, 1.37 cairo_xlib_surface.c, 1.38, 1.39

Alexander Larsson commit at pdx.freedesktop.org
Wed Jan 26 06:49:19 PST 2005


Committed by: alexl

Update of /cvs/cairo/cairo/src
In directory gabe:/tmp/cvs-serv12036/src

Modified Files:
	cairo_ft_font.c cairo_xlib_surface.c 
Log Message:
2005-01-26  Alexander Larsson  <alexl at redhat.com>

	* src/cairo_ft_font.c: (_ft_unscaled_font_set_scale):
	Fix access to uninitialized data
	
	* src/cairo_xlib_surface.c:
	key must be first element in cache entry



Index: cairo_ft_font.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo_ft_font.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -d -r1.36 -r1.37
--- cairo_ft_font.c	25 Jan 2005 19:48:59 -0000	1.36
+++ cairo_ft_font.c	26 Jan 2005 14:49:16 -0000	1.37
@@ -445,12 +445,14 @@
 
     assert (unscaled->face != NULL);
     
-    if (scale->matrix[0][0] == unscaled->current_scale.matrix[0][0] &&
+    if (unscaled->have_scale &&
+	scale->matrix[0][0] == unscaled->current_scale.matrix[0][0] &&
 	scale->matrix[0][1] == unscaled->current_scale.matrix[0][1] &&
 	scale->matrix[1][0] == unscaled->current_scale.matrix[1][0] &&
 	scale->matrix[1][1] == unscaled->current_scale.matrix[1][1])
 	return;
 
+    unscaled->have_scale = 1;
     unscaled->current_scale = *scale;
 	
     _compute_transform (&sf, scale);

Index: cairo_xlib_surface.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo_xlib_surface.c,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -d -r1.38 -r1.39
--- cairo_xlib_surface.c	21 Jan 2005 22:33:48 -0000	1.38
+++ cairo_xlib_surface.c	26 Jan 2005 14:49:16 -0000	1.39
@@ -823,10 +823,10 @@
 } glyphset_cache_t;
 
 typedef struct {
-    int refcount;
     cairo_glyph_cache_key_t key;
     Glyph glyph;
     XGlyphInfo info;
+    int refcount;
 } glyphset_cache_entry_t;
 
 static Glyph




More information about the cairo-commit mailing list