jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=0d85525dc895a414d0f50d4a7e82049aa0afc69d
commit 0d85525dc895a414d0f50d4a7e82049aa0afc69d Author: Jean-Philippe Andre <[email protected]> Date: Wed Dec 20 11:02:59 2017 +0900 loop: Fix loop_get search priority According to comments by @k-s & @raster. See 784a5b56a3c798e5a8 this was intended to be a fallback, not the first lookup indeed. Since this is an error case, let's print an ERR message at least. --- src/lib/ecore/efl_loop_consumer.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/lib/ecore/efl_loop_consumer.c b/src/lib/ecore/efl_loop_consumer.c index 389e0c5f96..f984909e1a 100644 --- a/src/lib/ecore/efl_loop_consumer.c +++ b/src/lib/ecore/efl_loop_consumer.c @@ -14,9 +14,14 @@ struct _Efl_Loop_Consumer_Data static Efl_Loop * _efl_loop_consumer_loop_get(Eo *obj, Efl_Loop_Consumer_Data *pd EINA_UNUSED) { - if (eina_main_loop_is()) - return ecore_main_loop_get(); - return efl_provider_find(obj, EFL_LOOP_CLASS); + Efl_Loop *loop = efl_provider_find(obj, EFL_LOOP_CLASS); + if (!loop && eina_main_loop_is()) + { + loop = ecore_main_loop_get(); + ERR("Failed to get the loop on object %p from the main thread! " + "Returning the main loop: %p", obj, loop); + } + return loop; } static void --
