Little errors no one cares about, but make thread-less case work as expected
authorsachiel <sachiel@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 7 Jul 2011 18:39:25 +0000 (18:39 +0000)
committersachiel <sachiel@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 7 Jul 2011 18:39:25 +0000 (18:39 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@61129 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore/ecore_thread.c

index 2eba373..ae339ce 100644 (file)
@@ -969,7 +969,7 @@ ecore_thread_run(Ecore_Thread_Cb func_blocking,
 
       func_blocking((void *)data, (Ecore_Thread *) work);
       if (work->cancel == EINA_FALSE) func_end((void *)data, (Ecore_Thread *) work);
-      else func_end((void *)data, (Ecore_Thread *) work);
+      else func_cancel((void *)data, (Ecore_Thread *) work);
 
    } while (work->reschedule == EINA_TRUE);
 
@@ -1196,7 +1196,7 @@ EAPI Ecore_Thread *ecore_thread_feedback_run(Ecore_Thread_Cb func_heavy,
 
       if (worker.cancel) func_cancel((void *)data, (Ecore_Thread *) &worker);
       else func_end((void *)data, (Ecore_Thread *) &worker);
-   } while (worker.reschedule == EINA_FALSE);
+   } while (worker.reschedule == EINA_TRUE);
 
    return NULL;
 #endif