* ecore: always check for func_cancel being not NULL before using it.
authorcedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 25 Oct 2010 09:39:00 +0000 (09:39 +0000)
committercedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 25 Oct 2010 09:39:00 +0000 (09:39 +0000)
Reported by Hugo Camboulive <hugo.camboulive@gmail.com>.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@53851 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore/ecore_thread.c

index 09af8c8..6793d17 100644 (file)
@@ -481,7 +481,8 @@ ecore_thread_run(Ecore_Thread_Heavy_Cb func_blocking,
    work = malloc(sizeof (Ecore_Pthread_Worker));
    if (!work)
      {
-        func_cancel((void *) data);
+        if (func_cancel)
+          func_cancel((void *) data);
         return NULL;
      }
 
@@ -801,7 +802,7 @@ EAPI Ecore_Thread *ecore_thread_feedback_run(Ecore_Thread_Heavy_Cb func_heavy,
 
    func_heavy((Ecore_Thread *) &worker, (void *)data);
 
-   if (worker.cancel) func_cancel((void *)data);
+   if (worker.func_cancel) func_cancel((void *)data);
    else func_end((void *)data);
 
    return NULL;