[cairo] [PATCH 2/2] test: Release owned pattern

Andrea Canciani ranma42 at gmail.com
Thu Nov 20 08:22:31 PST 2014


The pattern created by cairo_pattern_create_rgb() is owned by the
caller, hence it needs to be released.

Fixes:

malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
_cairo_pattern_create_solid (cairo-pattern.c:605)
_cairo_pattern_create_in_error (cairo-pattern.c:628)
cairo_pop_group (cairo.c:552)
test_cairo_push_group (api-special-cases.c:157)
preamble (api-special-cases.c:1766)
main (cairo-test-runner.c:228)
---
 test/api-special-cases.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/test/api-special-cases.c b/test/api-special-cases.c
index e861152..c4a754d 100644
--- a/test/api-special-cases.c
+++ b/test/api-special-cases.c
@@ -181,7 +181,9 @@ test_cairo_set_operator (cairo_t *cr)
 static cairo_test_status_t
 test_cairo_set_source (cairo_t *cr)
 {
-    cairo_set_source (cr, cairo_pattern_create_rgb (0, 0, 0));
+    cairo_pattern_t *source = cairo_pattern_create_rgb (0, 0, 0);
+    cairo_set_source (cr, source);
+    cairo_pattern_destroy (source);
 
     return CAIRO_TEST_SUCCESS;
 }
-- 
1.9.3 (Apple Git-50)



More information about the cairo mailing list