aboutsummaryrefslogtreecommitdiffstats
path: root/legacy/elementary/src/lib/elm_win.c
diff options
context:
space:
mode:
authorChunEon Park <hermet@hermet.pe.kr>2012-07-23 08:23:01 +0000
committerChunEon Park <hermet@hermet.pe.kr>2012-07-23 08:23:01 +0000
commitd555e52cc42285b6f47717c3be5f70967ffd8a88 (patch)
tree1d55e5c38b2c4ae4dc298bc27d8db95e82b030d5 /legacy/elementary/src/lib/elm_win.c
parentThe label should be inserted and the visible signal should be emitted, only w... (diff)
downloadefl-d555e52cc42285b6f47717c3be5f70967ffd8a88.tar.gz
elementary/win - fixed invalid sd memory access catched by valgrind.
now, more simple and clear! SVN revision: 74310
Diffstat (limited to 'legacy/elementary/src/lib/elm_win.c')
-rw-r--r--legacy/elementary/src/lib/elm_win.c28
1 files changed, 12 insertions, 16 deletions
diff --git a/legacy/elementary/src/lib/elm_win.c b/legacy/elementary/src/lib/elm_win.c
index a227319f68..519ecc98ea 100644
--- a/legacy/elementary/src/lib/elm_win.c
+++ b/legacy/elementary/src/lib/elm_win.c
@@ -1140,6 +1140,16 @@ _elm_win_focus_highlight_shutdown(Elm_Win_Smart_Data *sd)
}
static void
+_elm_win_on_img_obj_del(void *data,
+ Evas *e __UNUSED__,
+ Evas_Object *obj __UNUSED__,
+ void *event_info __UNUSED__)
+{
+ Elm_Win_Smart_Data *sd = data;
+ sd->img_obj = NULL;
+}
+
+static void
_elm_win_smart_del(Evas_Object *obj)
{
ELM_WIN_DATA_GET(obj, sd);
@@ -1177,6 +1187,8 @@ _elm_win_smart_del(Evas_Object *obj)
if (sd->img_obj)
{
+ evas_object_event_callback_del_full
+ (sd->img_obj, EVAS_CALLBACK_DEL, _elm_win_on_img_obj_del, sd);
sd->img_obj = NULL;
}
else
@@ -1219,22 +1231,6 @@ _elm_win_smart_del(Evas_Object *obj)
}
static void
-_elm_win_on_img_obj_del(void *data,
- Evas *e __UNUSED__,
- Evas_Object *obj __UNUSED__,
- void *event_info __UNUSED__)
-{
- Elm_Win_Smart_Data *sd = data;
-
- if (!sd->img_obj) return;
-
- evas_object_event_callback_del_full
- (sd->img_obj, EVAS_CALLBACK_DEL, _elm_win_on_img_obj_del, sd);
-
- evas_object_del(sd->img_obj);
-}
-
-static void
_elm_win_obj_intercept_show(void *data,
Evas_Object *obj)
{