summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaehyun Cho <jae_hyun.cho@samsung.com>2017-01-04 15:47:46 +0900
committerJaehyun Cho <jae_hyun.cho@samsung.com>2017-01-20 16:31:06 +0900
commitc0cb99117beffce9a63454a3b19c2cef0d5befdb (patch)
treec70377b028acfe7d40330c410a84d3149e7dc6f7
parentf8f8cde91cfd7194e6d2c8c48293e70b6378aa48 (diff)
downloadefl-modules-c0cb99117beffce9a63454a3b19c2cef0d5befdb.tar.gz
efl-modules-c0cb99117beffce9a63454a3b19c2cef0d5befdb.tar.bz2
efl-modules-c0cb99117beffce9a63454a3b19c2cef0d5befdb.zip
naviframe_effect: Fix to deallocate data before calling smart callback
naviframe_effect allocates data for transition effect when item push/pop is called. naviframe_effect emits signal to call smart callback. Previously, naviframe_effect deallocated data for transition effect after emitting signal. If application push/pop item in smart callback, then newly allocated data in item push/pop is incorrectly deallocated. This commit deallocates data before emitting signal to deallocate data before calling smart callback. Change-Id: Ic432418bc0152c6415efd27a682d78dd287108c7
-rw-r--r--naviframe_effect/naviframe_effect.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/naviframe_effect/naviframe_effect.c b/naviframe_effect/naviframe_effect.c
index ed6ae29..6d16e80 100644
--- a/naviframe_effect/naviframe_effect.c
+++ b/naviframe_effect/naviframe_effect.c
@@ -79,13 +79,15 @@ _tizen_transit_del_cb(void *data, Elm_Transit *transit EINA_UNUSED)
evas_object_freeze_events_set(nd->view, EINA_FALSE);
nd->transit = NULL;
- //Emit finished signal to finish view transition.
- elm_object_signal_emit(nd->view, nd->signal, signal_source);
- edje_object_message_signal_process(elm_layout_edje_get(nd->view));
+ const char *signal = nd->signal;
evas_object_data_del(nd->nf, key);
nd_list = eina_list_remove(nd_list, nd);
free(nd);
+
+ //Emit finished signal to finish view transition.
+ elm_object_signal_emit(view, signal, signal_source);
+ edje_object_message_signal_process(elm_layout_edje_get(view));
}
static Elm_Transit_Effect *