diff options
author | Subhransu Mohanty <sub.mohanty@samsung.com> | 2015-04-03 16:38:17 +0200 |
---|---|---|
committer | Cedric BAIL <cedric@osg.samsung.com> | 2015-04-03 16:38:17 +0200 |
commit | f4d325ee78fd0de7bc0390b1755c1c29f8e728e3 (patch) | |
tree | 33112d59891cb62fb9fbb9e85de114b77ed97767 | |
parent | 8d584dff34c67716dd68c87e40c09d41bd67864b (diff) | |
download | efl-f4d325ee78fd0de7bc0390b1755c1c29f8e728e3.tar.gz |
evas: fix memory leak in Efl.Vg.Base class.
-rw-r--r-- | src/lib/evas/canvas/efl_vg_base.eo | 1 | ||||
-rw-r--r-- | src/lib/evas/canvas/evas_vg_node.c | 11 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/lib/evas/canvas/efl_vg_base.eo b/src/lib/evas/canvas/efl_vg_base.eo index e54256771e..ebd0dce3c9 100644 --- a/src/lib/evas/canvas/efl_vg_base.eo +++ b/src/lib/evas/canvas/efl_vg_base.eo @@ -74,6 +74,7 @@ abstract Efl.VG.Base (Eo.Base, Efl.Gfx.Base, Efl.Gfx.Stack) implements { Eo.Base.parent.set; Eo.Base.constructor; + Eo.Base.destructor; Efl.Gfx.Base.visible.set; Efl.Gfx.Base.visible.get; Efl.Gfx.Base.color.set; diff --git a/src/lib/evas/canvas/evas_vg_node.c b/src/lib/evas/canvas/evas_vg_node.c index 4254e5909a..6757771262 100644 --- a/src/lib/evas/canvas/evas_vg_node.c +++ b/src/lib/evas/canvas/evas_vg_node.c @@ -247,6 +247,17 @@ _efl_vg_base_eo_base_constructor(Eo *obj, } static void +_efl_vg_base_eo_base_destructor(Eo *obj, Efl_VG_Base_Data *pd) +{ + if (pd->m) + { + free(pd->m); + pd->m = NULL; + } + eo_do_super(obj, MY_CLASS, eo_destructor()); +} + +static void _efl_vg_base_eo_base_parent_set(Eo *obj, Efl_VG_Base_Data *pd EINA_UNUSED, Eo *parent) |