summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/exceptions.cc
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/exceptions.cc')
-rw-r--r--winsup/cygwin/exceptions.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc
index e73775f66..877b02d58 100644
--- a/winsup/cygwin/exceptions.cc
+++ b/winsup/cygwin/exceptions.cc
@@ -576,7 +576,8 @@ handle_sigsuspend (sigset_t tempmask)
// interested in through.
sigproc_printf ("old mask %x, new mask %x", oldmask, tempmask);
- WaitForSingleObject (signal_arrived, INFINITE);
+ pthread_testcancel ();
+ pthread::cancelable_wait (signal_arrived, INFINITE);
set_sig_errno (EINTR); // Per POSIX