mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-01-19 03:53:58 +08:00
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
@ -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…
Reference in New Issue
Block a user