summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Goldstein <cardoe@gentoo.org>2008-06-12 14:56:11 +0000
committerDoug Goldstein <cardoe@gentoo.org>2008-06-12 14:56:11 +0000
commitfaeac72c056ea75ac140d84d8e207edd0832176d (patch)
tree206b02554c231af0f86af51bb46dfce043e4bc8d /x11-libs/pixman/files
parentadd USE=sctp for dev-lang/erlang (diff)
downloadgentoo-2-faeac72c056ea75ac140d84d8e207edd0832176d.tar.gz
gentoo-2-faeac72c056ea75ac140d84d8e207edd0832176d.tar.bz2
gentoo-2-faeac72c056ea75ac140d84d8e207edd0832176d.zip
fix #225907. Patch by Maximilian Grothusmann <maxi@own-hero.net> fixing the memory leak
(Portage version: 2.1.5.4)
Diffstat (limited to 'x11-libs/pixman/files')
-rw-r--r--x11-libs/pixman/files/pixman-0.11.4-memleak.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/x11-libs/pixman/files/pixman-0.11.4-memleak.patch b/x11-libs/pixman/files/pixman-0.11.4-memleak.patch
new file mode 100644
index 000000000000..e33a84f758f6
--- /dev/null
+++ b/x11-libs/pixman/files/pixman-0.11.4-memleak.patch
@@ -0,0 +1,46 @@
+diff --git a/pixman/pixman-region16.c b/pixman/pixman-region16.c
+index 1a0edfe..869e18d 100644
+--- a/pixman/pixman-region16.c
++++ b/pixman/pixman-region16.c
+@@ -47,6 +47,7 @@ pixman_region16_copy_from_region32 (pixman_region16_t *dst,
+ 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 (pixman_region16_t *dst,
+ }
+
+ 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"
+diff --git a/pixman/pixman-region32.c b/pixman/pixman-region32.c
+index 4b5598d..6e083b5 100644
+--- a/pixman/pixman-region32.c
++++ b/pixman/pixman-region32.c
+@@ -45,6 +45,7 @@ pixman_region32_copy_from_region16 (pixman_region32_t *dst,
+ 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 (pixman_region32_t *dst,
+ }
+
+ 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"