ector: fix memory leak in software backend when using shape.
authorSubhransu Mohanty <sub.mohanty@samsung.com>
Mon, 17 Aug 2015 04:54:49 +0000 (13:54 +0900)
committerCedric BAIL <cedric@osg.samsung.com>
Wed, 19 Aug 2015 12:57:12 +0000 (14:57 +0200)
Mixin destructor are not called, so we need to explicitely call it.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
src/lib/ector/software/ector_renderer_software_shape.c

index a91b80e..1c985d4 100644 (file)
@@ -378,6 +378,9 @@ void
 _ector_renderer_software_shape_eo_base_destructor(Eo *obj, Ector_Renderer_Software_Shape_Data *pd)
 {
    Eo *parent;
+   //FIXME, As base class  destructor can't call destructor of mixin class.
+   // call explicit API to free shape data.
+   eo_do(obj, efl_gfx_shape_reset());
 
    if (pd->shape_data) ector_software_rasterizer_destroy_rle_data(pd->shape_data);
    if (pd->outline_data) ector_software_rasterizer_destroy_rle_data(pd->outline_data);