eina: fix error reporting in cond_timedwait
authorAndrii Kroitor <an.kroitor@samsung.com>
Tue, 6 Sep 2016 21:59:39 +0000 (14:59 -0700)
committerCedric BAIL <cedric@osg.samsung.com>
Tue, 6 Sep 2016 21:59:47 +0000 (14:59 -0700)
Summary: EINA_FALSE was set into wrong variable.

Reviewers: jpeg, raster, Hermet, cedric

Reviewed By: cedric

Subscribers: NikaWhite

Differential Revision: https://phab.enlightenment.org/D4282

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
src/lib/eina/eina_inline_lock_posix.x

index d2e4b95..20ff9ec 100644 (file)
@@ -502,14 +502,12 @@ eina_condition_timedwait(Eina_Condition *cond, double t)
    err = pthread_cond_timedwait(&(cond->condition),
                                 &(cond->lock->mutex),
                                 &ts);
-   if (err == 0) r = EINA_TRUE;
+   if (err == 0)
+      r = EINA_TRUE;
    else if (err == EPERM)
-     err = EINA_FALSE;
+      eina_error_set(EPERM);
    else if (err == ETIMEDOUT)
-     {
-        r = EINA_FALSE;
-        eina_error_set(ETIMEDOUT);
-     }
+      eina_error_set(ETIMEDOUT);
    else EINA_LOCK_ABORT_DEBUG(err, cond_timedwait, cond);
 
 #ifdef EINA_HAVE_DEBUG_THREADS