summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCedric BAIL <cedric@osg.samsung.com>2017-02-02 10:29:39 -0800
committerCedric BAIL <cedric@osg.samsung.com>2017-02-02 10:30:39 -0800
commitddf19072170c76dab89a5919107a2367ca606bc1 (patch)
treec33ca1f563bee874c29512f76096bf300abee4db
parent4aee312774df7446eecc9bcfd15ce98ea568f815 (diff)
downloadefl-ddf19072170c76dab89a5919107a2367ca606bc1.tar.gz
evas: make sure we always wait in the correct thread.
-rw-r--r--src/lib/evas/cache/evas_preload.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/lib/evas/cache/evas_preload.c b/src/lib/evas/cache/evas_preload.c
index f400a71c20..649309d173 100644
--- a/src/lib/evas/cache/evas_preload.c
+++ b/src/lib/evas/cache/evas_preload.c
@@ -142,6 +142,13 @@ evas_preload_thread_cancelled_is(Evas_Preload_Pthread *work)
Eina_Bool
evas_preload_pthread_wait(Evas_Preload_Pthread *work, double wait)
{
+ Eina_Bool r;
+
if (!work) return EINA_TRUE;
- return ecore_thread_wait(work->thread, wait);
+
+ ecore_thread_main_loop_begin();
+ r = ecore_thread_wait(work->thread, wait);
+ ecore_thread_main_loop_end();
+
+ return r;
}