Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2011-04-29 11:22:07 +0400
committerCorinna Vinschen <corinna@vinschen.de>2011-04-29 11:22:07 +0400
commit541820d0eefe3859162cce48946c9649752b9b3b (patch)
treeb5dc57a767e106e74571dd0414f341676f1ff314 /winsup/cygwin/posix_ipc.cc
parent530994bdce6a6ec12b8223d57cf4654e1609169e (diff)
* posix_ipc.cc (ipc_cond_timedwait): Only wait for pthread's
cancel_event if thread's cancelability isn't disabled.
Diffstat (limited to 'winsup/cygwin/posix_ipc.cc')
-rw-r--r--winsup/cygwin/posix_ipc.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/winsup/cygwin/posix_ipc.cc b/winsup/cygwin/posix_ipc.cc
index 227282fcb..88f5a2e5e 100644
--- a/winsup/cygwin/posix_ipc.cc
+++ b/winsup/cygwin/posix_ipc.cc
@@ -181,7 +181,8 @@ ipc_cond_timedwait (HANDLE evt, HANDLE mtx, const struct timespec *abstime)
int ret = 0;
thread = pthread::self ();
- if (thread && thread->cancel_event)
+ if (thread && thread->cancel_event
+ && thread->cancelstate != PTHREAD_CANCEL_DISABLE)
w4[cnt++] = thread->cancel_event;
if (abstime)
{