diff options
author | Jean-Philippe Andre <jp.andre@samsung.com> | 2017-12-18 11:58:43 +0900 |
---|---|---|
committer | Jean-Philippe Andre <jp.andre@samsung.com> | 2017-12-18 19:54:31 +0900 |
commit | 784a5b56a3c798e5a8081e2ce30c79cd8ef7b326 (patch) | |
tree | ca36741ba795a8b352b9f1d093c0e8ec13671107 | |
parent | fed81234480b7ed5b4d414f2df18b49992809a35 (diff) | |
download | efl-784a5b56a3c798e5a8081e2ce30c79cd8ef7b326.tar.gz |
loop: Try harder to find the main loop
If the object has no parent or anything else goes a bit wrong,
efl_loop_get() may fail to return the loop object. It's a bit ridiculous
when we're in the main loop as we know which loop object was requested.
This avoids returning NULL.
-rw-r--r-- | src/lib/ecore/efl_loop_consumer.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lib/ecore/efl_loop_consumer.c b/src/lib/ecore/efl_loop_consumer.c index d436da82ff..389e0c5f96 100644 --- a/src/lib/ecore/efl_loop_consumer.c +++ b/src/lib/ecore/efl_loop_consumer.c @@ -14,6 +14,8 @@ 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); } |