[cairo] [PATCH v2 1/2] [PATCH v2 1/2] src: Fix issues reported by cppcheck static analysis tool

Ravi Nanjundappa nravi.n at samsung.com
Thu Aug 21 04:59:01 PDT 2014


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 <nravi.n at samsung.com>
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
---
 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 9b16bd2..834a2f1 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,
-- 
1.7.9.5



More information about the cairo mailing list