From c4af108f06862ac91c46ea08544f2d6817409bbe Mon Sep 17 00:00:00 2001 From: hermet Date: Sat, 4 Jun 2011 10:03:22 +0000 Subject: [PATCH] elementary/pager - prevent exception cases. git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@59957 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- src/lib/elm_pager.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/lib/elm_pager.c b/src/lib/elm_pager.c index 4251bfb..6884c53 100644 --- a/src/lib/elm_pager.c +++ b/src/lib/elm_pager.c @@ -260,13 +260,19 @@ _signal_hide_finished(void *data, Evas_Object *obj __UNUSED__, const char *emiss { Item *it = data; Evas_Object *obj2 = it->obj; - evas_object_hide(it->base); - edje_object_signal_emit(it->base, "elm,action,reset", "elm"); - evas_object_smart_callback_call(obj2, SIG_HIDE_FINISHED, it->content); - edje_object_message_signal_process(it->base); - evas_object_hide(it->content); - if (it->popme) evas_object_del(it->content); - _sizing_eval(obj2); + Evas_Object *content = it->content; + + if (it->popme) + evas_object_del(content); + else + { + evas_object_hide(it->base); + edje_object_signal_emit(it->base, "elm,action,reset", "elm"); + edje_object_message_signal_process(it->base); + evas_object_hide(content); + } + evas_object_smart_callback_call(obj2, SIG_HIDE_FINISHED, content); + _sizing_eval(obj2); } /** -- 2.7.4