diff --git a/src/lib/edje/edje_callbacks.c b/src/lib/edje/edje_callbacks.c index 8a320933c9..88154891fa 100644 --- a/src/lib/edje/edje_callbacks.c +++ b/src/lib/edje/edje_callbacks.c @@ -437,6 +437,7 @@ _edje_pending_timer_cb(void *data) pp = data; pp->edje->pending_actions = eina_list_remove(pp->edje->pending_actions, pp); _edje_program_run(pp->edje, pp->program, 1, "", ""); + pp->timer = NULL; free(pp); return ECORE_CALLBACK_CANCEL; } diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c index 01030e30db..c87958685b 100644 --- a/src/lib/edje/edje_load.c +++ b/src/lib/edje/edje_load.c @@ -2051,6 +2051,7 @@ _edje_file_del(Edje *ed) EINA_LIST_FREE(ed->pending_actions, pp) { ecore_timer_del(pp->timer); + pp->timer = NULL; free(pp); } } diff --git a/src/lib/edje/edje_program.c b/src/lib/edje/edje_program.c index 232dcb3ccf..1482fa4c9c 100644 --- a/src/lib/edje/edje_program.c +++ b/src/lib/edje/edje_program.c @@ -873,6 +873,7 @@ low_mem_current: { ed->pending_actions = eina_list_remove(ed->pending_actions, pp); ecore_timer_del(pp->timer); + pp->timer = NULL; free(pp); // goto done; }