cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=c4117cdae4ad0f03d3b4d4683ad93511423f65eb
commit c4117cdae4ad0f03d3b4d4683ad93511423f65eb Author: Cedric BAIL <[email protected]> Date: Wed Oct 14 10:57:53 2015 -0700 ecore: fix usage eina_condition_timedwait to use relative time instead of absolute time. This could lead to some very long and unexpected pause as the timeout passed to eina_condition_timedwait was passed as a absolute time instead of relative. Hopefully we don't build rocket. --- src/lib/ecore/ecore_thread.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/ecore/ecore_thread.c b/src/lib/ecore/ecore_thread.c index f1aa613..befb0fb 100644 --- a/src/lib/ecore/ecore_thread.c +++ b/src/lib/ecore/ecore_thread.c @@ -1398,7 +1398,7 @@ ecore_thread_global_data_wait(const char *key, if ((ret) || (!seconds) || ((seconds > 0) && (tm <= ecore_time_get()))) break; LKL(_ecore_thread_global_hash_mutex); - CDW(_ecore_thread_global_hash_cond, tm); + CDW(_ecore_thread_global_hash_cond, tm - ecore_time_get()); LKU(_ecore_thread_global_hash_mutex); } if (ret) return ret->data; --
