From 52c4f0f2dafcc6e087a9c3c6d00c582fc272c2c2 Mon Sep 17 00:00:00 2001 From: Ravi Nanjundappa Date: Thu, 21 Aug 2014 18:18:34 +0530 Subject: src: Fix memory issue reported by cppcheck static analysis tool cppcheck analysis tool reports the following issues when run on the latest Cairo source. $ grep "(error)" cppcheck_error_log.txt [src/skia/cairo-skia-surface.cpp:245]: (error) Memory leak: surface $ The proposed changes fixes the above issues. Signed-off-by: Ravi Nanjundappa Reviewed-by: Chris Wilson --- src/skia/cairo-skia-surface.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/skia/cairo-skia-surface.cpp b/src/skia/cairo-skia-surface.cpp index 9b16bd2c0..834a2f13b 100644 --- a/src/skia/cairo-skia-surface.cpp +++ b/src/skia/cairo-skia-surface.cpp @@ -241,8 +241,10 @@ _cairo_skia_surface_create_internal (SkBitmap::Config config, pixman_image = pixman_image_create_bits (pixman_format, width, height, (uint32_t *) data, stride); - if (unlikely (pixman_image == NULL)) + if (unlikely (pixman_image == NULL)) { + free (surface); return (cairo_skia_surface_t *) _cairo_surface_create_in_error (_cairo_error (CAIRO_STATUS_NO_MEMORY)); + } _cairo_surface_init (&surface->image.base, &cairo_skia_surface_backend, -- cgit v1.2.1