summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHermet Park <hermetpark@gmail.com>2018-04-20 13:29:46 +0900
committerHermet Park <hermetpark@gmail.com>2018-04-20 13:29:46 +0900
commitfd85423ae3eb2b9925daf84f164d1bf903ebfed7 (patch)
tree3e8455d6e80dd5f5faf3f0ff2cf86b04066e0679
parent215b854b5452f4811e67e37164eb9aeedbef69b9 (diff)
downloadefl-fd85423ae3eb2b9925daf84f164d1bf903ebfed7.tar.gz
ecore: fix a potential memory leak.
if the func argument is null, allocated memory won't be freed properly. return it as soon as possible. @fix
-rw-r--r--src/lib/ecore/ecore_timer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/ecore/ecore_timer.c b/src/lib/ecore/ecore_timer.c
index ac6fb853dc..1ebce1f3df 100644
--- a/src/lib/ecore/ecore_timer.c
+++ b/src/lib/ecore/ecore_timer.c
@@ -174,13 +174,13 @@ ecore_timer_add(double in, Ecore_Task_Cb func, const void *data)
Eo *timer;
EINA_MAIN_LOOP_CHECK_RETURN_VAL(NULL);
- legacy = calloc(1, sizeof (Ecore_Timer_Legacy));
- if (!legacy) return NULL;
if (!func)
{
ERR("Callback function must be set up for the class.");
return NULL;
}
+ legacy = calloc(1, sizeof (Ecore_Timer_Legacy));
+ if (!legacy) return NULL;
legacy->func = func;
legacy->data = data;
timer = efl_add(MY_CLASS, efl_main_loop_get(),