summaryrefslogtreecommitdiff
path: root/recipes/cairo/cairo-1.4.14/0001-Fix-for-a-memory-leak-in-pixman.patch
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/cairo/cairo-1.4.14/0001-Fix-for-a-memory-leak-in-pixman.patch
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/cairo/cairo-1.4.14/0001-Fix-for-a-memory-leak-in-pixman.patch')
-rw-r--r--recipes/cairo/cairo-1.4.14/0001-Fix-for-a-memory-leak-in-pixman.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/recipes/cairo/cairo-1.4.14/0001-Fix-for-a-memory-leak-in-pixman.patch b/recipes/cairo/cairo-1.4.14/0001-Fix-for-a-memory-leak-in-pixman.patch
new file mode 100644
index 0000000000..686ab7ceb0
--- /dev/null
+++ b/recipes/cairo/cairo-1.4.14/0001-Fix-for-a-memory-leak-in-pixman.patch
@@ -0,0 +1,32 @@
+From 7647f29a2a3b69592e38f50890a96d8deeaa2dbb Mon Sep 17 00:00:00 2001
+From: Jan Slupski <jslupski@juljas.net>
+Date: Fri, 15 Feb 2008 00:55:30 +0100
+Subject: [PATCH] Fix for a memory leak in pixman.
+
+Port of a 1.6 fix for a memory leak in pixman_region_init_rects/pixman_rect_alloc
+when the count of boxes is 0.
+---
+ pixman/src/pixregion.c | 9 +++++++++
+ 1 files changed, 9 insertions(+), 0 deletions(-)
+
+diff --git a/pixman/src/pixregion.c b/pixman/src/pixregion.c
+index 1ed3ad7..d6caf6c 100644
+--- a/pixman/src/pixregion.c
++++ b/pixman/src/pixregion.c
+@@ -355,6 +355,15 @@ pixman_region_init_rects(pixman_region16_t *region, pixman_box16_t *boxes, int c
+ }
+
+ pixman_region_init(region);
++
++ /* if it's 0, don't call pixman_rect_alloc -- 0 rectangles is
++ * a special case, and causing pixman_rect_alloc would cause
++ * us to leak memory (because the 0-rect case should be the
++ * static pixman_region_emptyData data).
++ */
++ if (count == 0)
++ return PIXMAN_REGION_STATUS_SUCCESS;
++
+ if (!pixman_rect_alloc(region, count))
+ return PIXMAN_REGION_STATUS_FAILURE;
+
+