summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-08-22 02:37:04 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-08-22 02:37:04 +0000
commit2ac8735d0dee72631472b0188cfda2657cc086a7 (patch)
tree82196c45beec3fc0468dccdde2c7ea72643f7ba5
parent2e49169de64393c4ebae9e4221b650ff223e9a4a (diff)
downloadgcc-2ac8735d0dee72631472b0188cfda2657cc086a7.tar.gz
* posix-threads.cc (_Jv_CondWait): Treat a timeout as a normal
result. PR 40. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28799 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/posix-threads.cc3
2 files changed, 8 insertions, 0 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index c41ff38fa94..a3a6f50d3f6 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+1999-08-21 Tom Tromey <tromey@cygnus.com>
+
+ * posix-threads.cc (_Jv_CondWait): Treat a timeout as a normal
+ result. PR 40.
+
1999-08-21 Alexandre Oliva <oliva@dcc.unicamp.br>
* configure.in: Check for in_addr_t in netinet/in.h too. Check
diff --git a/libjava/posix-threads.cc b/libjava/posix-threads.cc
index 825b0206c19..791c43bc7bb 100644
--- a/libjava/posix-threads.cc
+++ b/libjava/posix-threads.cc
@@ -91,6 +91,9 @@ _Jv_CondWait (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu,
ts.tv_nsec = ((m % 1000) * 1000000) + nanos;
r = pthread_cond_timedwait (cv, pmu, &ts);
+ /* A timeout is a normal result. */
+ if (r && errno == ETIME)
+ r = 0;
}
return r;
}