posix-threads.cc (_Jv_CondWait): pthread_ calls return error code and don't set errno.
* posix-threads.cc (_Jv_CondWait): pthread_ calls return error code and don't set errno. From-SVN: r29179
This commit is contained in:
parent
5430acc846
commit
472236af04
2 changed files with 6 additions and 3 deletions
|
@ -1,5 +1,8 @@
|
|||
1999-09-07 Tom Tromey <tromey@cygnus.com>
|
||||
|
||||
* posix-threads.cc (_Jv_CondWait): pthread_ calls return error
|
||||
code and don't set errno.
|
||||
|
||||
* posix-threads.cc (_Jv_CondWait): Check `errno' against EINTR,
|
||||
not `r'. Changed `done_sleeping' to a `bool'.
|
||||
|
||||
|
|
|
@ -104,7 +104,7 @@ _Jv_CondWait (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu,
|
|||
|
||||
r = pthread_cond_timedwait (cv, pmu, &ts);
|
||||
|
||||
if (r && errno == EINTR)
|
||||
if (r == EINTR)
|
||||
{
|
||||
/* We were interrupted by a signal. Either this is
|
||||
because we were interrupted intentionally (i.e. by
|
||||
|
@ -127,7 +127,7 @@ _Jv_CondWait (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu,
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (r && errno == ETIMEDOUT)
|
||||
else if (r == ETIMEDOUT)
|
||||
{
|
||||
/* A timeout is a normal result. */
|
||||
r = 0;
|
||||
|
@ -139,7 +139,7 @@ _Jv_CondWait (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu,
|
|||
while (! done_sleeping);
|
||||
}
|
||||
|
||||
return r;
|
||||
return r != 0;
|
||||
}
|
||||
|
||||
#ifndef RECURSIVE_MUTEX_IS_DEFAULT
|
||||
|
|
Loading…
Add table
Reference in a new issue