diff options
authorMarcel Hollerbach <>2019-12-09 18:27:37 +0100
committerCedric BAIL <>2019-12-13 09:32:53 -0800
commit7a72796920041e9a0410a670f22e57f6c0250c88 (patch)
parentabc1cb0043fc5a696e169266e3e7cead6012b8b6 (diff)
efl_ui_pan: stop leaking content
pans implementation of Efl.Content is different to each other implementation, setting the content to NULL is not really deleting the obejct, since this is done at those widgets that are actaully using the pan. This is weird and fine in the same way, as the pan is only internal. However, when we are shutting down, we must free the content here. Reviewed-by: Cedric BAIL <> Differential Revision:
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/elementary/efl_ui_pan.c b/src/lib/elementary/efl_ui_pan.c
index 72e5c60a93..b86d68bdc6 100644
--- a/src/lib/elementary/efl_ui_pan.c
+++ b/src/lib/elementary/efl_ui_pan.c
@@ -110,7 +110,9 @@ _efl_ui_pan_efl_object_constructor(Eo *obj, Efl_Ui_Pan_Data *_pd EINA_UNUSED)
110EOLIAN static void 110EOLIAN static void
111_efl_ui_pan_efl_object_destructor(Eo *obj, Efl_Ui_Pan_Data *sd EINA_UNUSED) 111_efl_ui_pan_efl_object_destructor(Eo *obj, Efl_Ui_Pan_Data *sd EINA_UNUSED)
112{ 112{
113 efl_content_set(obj, NULL); 113 /* our implementation is a little bit incomplete, efl_content_set(obj, NULL) does not delete the content, However, if we do that, list grid and scroller would fail, because the assume ownership of the content */
114 Eo *content = efl_content_unset(obj);
115 efl_del(content);
114 efl_destructor(efl_super(obj, MY_CLASS)); 116 efl_destructor(efl_super(obj, MY_CLASS));
115} 117}
116 118