]> git.pld-linux.org Git - packages/cairo.git/commitdiff
- https://bugs.freedesktop.org/show_bug.cgi?id=4110
authorpaladine <paladine@pld-linux.org>
Wed, 17 Aug 2005 17:17:56 +0000 (17:17 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    cairo-bug4110.patch -> 1.1

cairo-bug4110.patch [new file with mode: 0644]

diff --git a/cairo-bug4110.patch b/cairo-bug4110.patch
new file mode 100644 (file)
index 0000000..11652ea
--- /dev/null
@@ -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;
+ }
This page took 0.037561 seconds and 4 git commands to generate.