summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2016-09-20 10:26:28 -0400
committerMike Blumenkrantz <zmike@osg.samsung.com>2016-09-20 11:20:22 -0400
commit17909e4fb5ef282ef33f2641882adaca303e1bf8 (patch)
treec3892d27e09d19330a0d194ec816c7fa9b3c92fd
parentae23533b0d5e218d8943427a6ca3bf49b3797b93 (diff)
downloadenlightenment-17909e4fb5ef282ef33f2641882adaca303e1bf8.tar.gz
always delete gadget's display object and ensure gadget object is null
fixes some object errors during container deletion
-rw-r--r--src/bin/e_gadget.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/bin/e_gadget.c b/src/bin/e_gadget.c
index 54ef51cd7c..75dbc2966a 100644
--- a/src/bin/e_gadget.c
+++ b/src/bin/e_gadget.c
@@ -264,6 +264,7 @@ _gadget_object_free(E_Object *eobj)
evas_object_event_callback_del_full(zgc->display, EVAS_CALLBACK_DEL, _gadget_del, zgc);
E_FREE_FUNC(zgc->display, evas_object_del);
}
+ zgc->gadget = NULL;
E_FREE_FUNC(zgc->drop_handlers, eina_hash_free);
E_FREE_FUNC(zgc->gadget, evas_object_del);
E_FREE_FUNC(zgc->cfg_object, evas_object_del);
@@ -1102,7 +1103,7 @@ _site_del(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
E_FREE_FUNC(zgs->move_handler, ecore_event_handler_del);
E_FREE_FUNC(zgs->mouse_up_handler, ecore_event_handler_del);
EINA_LIST_FOREACH(zgs->gadgets, l, zgc)
- evas_object_del(zgc->gadget);
+ evas_object_del(zgc->display);
if (zgs->name) return;
eina_stringshare_del(zgs->name);
free(zgs);