diff options
Diffstat (limited to 'winsup/cygwin/fhandler_windows.cc')
-rw-r--r-- | winsup/cygwin/fhandler_windows.cc | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/winsup/cygwin/fhandler_windows.cc b/winsup/cygwin/fhandler_windows.cc index 119266093..d4c39d4c0 100644 --- a/winsup/cygwin/fhandler_windows.cc +++ b/winsup/cygwin/fhandler_windows.cc @@ -98,10 +98,8 @@ fhandler_windows::read (void *buf, size_t& len) HANDLE w4[3] = { get_handle (), signal_arrived, NULL }; DWORD cnt = 2; - pthread_t thread = pthread::self (); - if (thread && thread->cancel_event - && thread->cancelstate != PTHREAD_CANCEL_DISABLE) - w4[cnt++] = thread->cancel_event; + if ((w4[cnt] = pthread::get_cancel_event ()) != NULL) + ++cnt; restart: switch (MsgWaitForMultipleObjectsEx (cnt, w4, is_nonblocking () ? 0 : INFINITE, |