summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSubhransu Mohanty <sub.mohanty@samsung.com>2015-08-17 13:54:49 +0900
committerCedric BAIL <cedric@osg.samsung.com>2015-08-19 14:57:12 +0200
commitfcb2605f4f5e8c89007818bb968994a4df295ecd (patch)
treeb18f13bf62b8f9da1e5db60fe1a3c9b3d6c4b6a4
parentf1a4f461c2f90372035c59fc9cc376d25ad54c27 (diff)
ector: fix memory leak in software backend when using shape.
Mixin destructor are not called, so we need to explicitely call it. Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
-rw-r--r--src/lib/ector/software/ector_renderer_software_shape.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/ector/software/ector_renderer_software_shape.c b/src/lib/ector/software/ector_renderer_software_shape.c
index a91b80eb3b..1c985d4518 100644
--- a/src/lib/ector/software/ector_renderer_software_shape.c
+++ b/src/lib/ector/software/ector_renderer_software_shape.c
@@ -378,6 +378,9 @@ void
378_ector_renderer_software_shape_eo_base_destructor(Eo *obj, Ector_Renderer_Software_Shape_Data *pd) 378_ector_renderer_software_shape_eo_base_destructor(Eo *obj, Ector_Renderer_Software_Shape_Data *pd)
379{ 379{
380 Eo *parent; 380 Eo *parent;
381 //FIXME, As base class destructor can't call destructor of mixin class.
382 // call explicit API to free shape data.
383 eo_do(obj, efl_gfx_shape_reset());
381 384
382 if (pd->shape_data) ector_software_rasterizer_destroy_rle_data(pd->shape_data); 385 if (pd->shape_data) ector_software_rasterizer_destroy_rle_data(pd->shape_data);
383 if (pd->outline_data) ector_software_rasterizer_destroy_rle_data(pd->outline_data); 386 if (pd->outline_data) ector_software_rasterizer_destroy_rle_data(pd->outline_data);