From 0e28ec541a743d05eab2e6432f05fded90880f39 Mon Sep 17 00:00:00 2001 From: e-taro Date: Thu, 23 Feb 2006 14:22:31 +0000 Subject: [PATCH] - free the list elements as well as the list itself - free the "change" too SVN revision: 20753 --- src/bin/e_gadget.c | 3 +++ src/bin/e_gadget.h | 1 + 2 files changed, 4 insertions(+) diff --git a/src/bin/e_gadget.c b/src/bin/e_gadget.c index 36c4cd2c7..94584c01d 100644 --- a/src/bin/e_gadget.c +++ b/src/bin/e_gadget.c @@ -162,6 +162,7 @@ _e_gadget_face_new(E_Gadget *gad, E_Container *con, E_Zone *zone) { change->gadget = gad; change->face = face; + face->change = change; } e_gadman_client_change_func_set(face->gmc, _e_gadget_face_cb_gmc_change, change); @@ -254,10 +255,12 @@ _e_gadget_free(E_Gadget *gad) e_object_unref(E_OBJECT(face->con)); e_object_del(E_OBJECT(face->gmc)); e_object_del(E_OBJECT(face->menu)); + E_FREE(face->change); if (face->main_obj) evas_object_del(face->main_obj); if (face->event_obj) evas_object_del(face->event_obj); if(gad->funcs.face_free) (gad->funcs.face_free)(gad->data, face); + E_FREE(face); } evas_list_free(gad->faces); diff --git a/src/bin/e_gadget.h b/src/bin/e_gadget.h index 0d5a72849..56220cb67 100644 --- a/src/bin/e_gadget.h +++ b/src/bin/e_gadget.h @@ -58,6 +58,7 @@ struct _E_Gadget_Face Evas_Object *main_obj; Evas_Object *event_obj; E_Gadman_Client *gmc; + E_Gadget_Change *change; void *data; };