SOURCES: cairo-bug4110.patch (NEW) - https://bugs.freedesktop.org/...
paladine
paladine at pld-linux.org
Wed Aug 17 19:18:02 CEST 2005
Author: paladine Date: Wed Aug 17 17:18:02 2005 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- https://bugs.freedesktop.org/show_bug.cgi?id=4110
---- Files affected:
SOURCES:
cairo-bug4110.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/cairo-bug4110.patch
diff -u /dev/null SOURCES/cairo-bug4110.patch:1.1
--- /dev/null Wed Aug 17 19:18:02 2005
+++ SOURCES/cairo-bug4110.patch Wed Aug 17 19:17:56 2005
@@ -0,0 +1,73 @@
+diff -urN cairo-0.9.2.orig/src/cairo-cache.c cairo-0.9.2/src/cairo-cache.c
+--- cairo-0.9.2.orig/src/cairo-cache.c 2005-08-17 18:28:20.765530192 +0200
++++ cairo-0.9.2/src/cairo-cache.c 2005-08-17 18:29:26.158588936 +0200
+@@ -512,7 +512,7 @@
+ {
+ /* This is the djb2 hash. */
+ unsigned long hash = 5381;
+- while (*c)
++ while (c && *c)
+ hash = ((hash << 5) + hash) + *c++;
+ return hash;
+ }
+diff -urN cairo-0.9.2.orig/src/cairo-ft-font.c cairo-0.9.2/src/cairo-ft-font.c
+--- cairo-0.9.2.orig/src/cairo-ft-font.c 2005-08-17 18:28:20.816522440 +0200
++++ cairo-0.9.2/src/cairo-ft-font.c 2005-08-17 18:33:08.097849040 +0200
+@@ -248,8 +248,8 @@
+
+ static void
+ _cairo_ft_unscaled_font_init_key (cairo_ft_unscaled_font_t *key,
+- char *filename,
+- int id)
++ char *filename,
++ int id)
+ {
+ unsigned long hash;
+
+@@ -290,22 +290,25 @@
+ int id,
+ FT_Face face)
+ {
+- char *filename_copy = NULL;
+-
+- if (filename) {
+- filename_copy = strdup (filename);
+- if (filename_copy == NULL)
+- return CAIRO_STATUS_NO_MEMORY;
+- }
+-
+- _cairo_ft_unscaled_font_init_key (unscaled, filename_copy, id);
++ _cairo_unscaled_font_init (&unscaled->base,
++ &cairo_ft_unscaled_font_backend);
+
+ if (face) {
+- unscaled->from_face = 1;
++ unscaled->from_face = TRUE;
+ unscaled->face = face;
++ unscaled->filename = NULL;
++ unscaled->id = 0;
+ } else {
+- unscaled->from_face = 0;
++ char *filename_copy;
++
++ unscaled->from_face = FALSE;
+ unscaled->face = NULL;
++
++ filename_copy = strdup (filename);
++ if (filename_copy == NULL)
++ return CAIRO_STATUS_NO_MEMORY;
++
++ _cairo_ft_unscaled_font_init_key (unscaled, filename_copy, id);
+ }
+
+ unscaled->have_scale = 0;
+@@ -313,9 +316,6 @@
+
+ unscaled->faces = NULL;
+
+- _cairo_unscaled_font_init (&unscaled->base,
+- &cairo_ft_unscaled_font_backend);
+-
+ return CAIRO_STATUS_SUCCESS;
+ }
+
================================================================
More information about the pld-cvs-commit
mailing list