]> git.pld-linux.org Git - packages/pixman.git/commitdiff
- from upstream
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 13 Jun 2008 19:55:32 +0000 (19:55 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    pixman-leak.patch -> 1.1

pixman-leak.patch [new file with mode: 0644]

diff --git a/pixman-leak.patch b/pixman-leak.patch
new file mode 100644 (file)
index 0000000..ce6dda3
--- /dev/null
@@ -0,0 +1,54 @@
+From: Maximilian Grothusmann <maxi@own-hero.net>
+Date: Fri, 13 Jun 2008 19:44:50 +0000 (-0700)
+Subject: Fix memory leak by freeing boxes{16,32}.
+X-Git-Url: http://gitweb.freedesktop.org/?p=pixman.git;a=commitdiff;h=29d144712e558aaeb49f4384028dd669d76a410b
+
+Fix memory leak by freeing boxes{16,32}.
+
+After calling pixman_region_init_rects() or
+pixman_region32_init_rects(), boxes{16,32} were not freed before
+returning. Fixes bug 16312.
+---
+
+--- a/pixman/pixman-region16.c
++++ b/pixman/pixman-region16.c
+@@ -47,6 +47,7 @@ pixman_region16_copy_from_region32 (pixm
+     int n_boxes, i;
+     pixman_box32_t *boxes32;
+     pixman_box16_t *boxes16;
++    pixman_bool_t retval;
+     
+     boxes32 = pixman_region32_rectangles (src, &n_boxes);
+@@ -64,7 +65,9 @@ pixman_region16_copy_from_region32 (pixm
+     }
+     pixman_region_fini (dst);
+-    return pixman_region_init_rects (dst, boxes16, n_boxes);
++    retval = pixman_region_init_rects (dst, boxes16, n_boxes);
++    free (boxes16);
++    return retval;
+ }
+ #include "pixman-region.c"
+--- a/pixman/pixman-region32.c
++++ b/pixman/pixman-region32.c
+@@ -45,6 +45,7 @@ pixman_region32_copy_from_region16 (pixm
+     int n_boxes, i;
+     pixman_box16_t *boxes16;
+     pixman_box32_t *boxes32;
++    pixman_bool_t retval;
+     
+     boxes16 = pixman_region_rectangles (src, &n_boxes);
+@@ -62,7 +63,9 @@ pixman_region32_copy_from_region16 (pixm
+     }
+     pixman_region32_fini (dst);
+-    return pixman_region32_init_rects (dst, boxes32, n_boxes);
++    retval = pixman_region32_init_rects (dst, boxes32, n_boxes);
++    free (boxes32);
++    return retval;
+ }
+ #include "pixman-region.c"
This page took 0.138403 seconds and 4 git commands to generate.