diff options
Diffstat (limited to 'winsup/cygwin/posix_ipc.cc')
-rw-r--r-- | winsup/cygwin/posix_ipc.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/winsup/cygwin/posix_ipc.cc b/winsup/cygwin/posix_ipc.cc index 600fb0d19..04b3e58bc 100644 --- a/winsup/cygwin/posix_ipc.cc +++ b/winsup/cygwin/posix_ipc.cc @@ -220,7 +220,6 @@ restart1: ret = EINTR; break; case WAIT_OBJECT_0 + 2: - pthread_testcancel (); ret = ETIMEDOUT; break; default: @@ -245,7 +244,6 @@ restart1: ret = EINTR; break; case WAIT_OBJECT_0 + 2: - pthread_testcancel (); ret = ETIMEDOUT; break; default: @@ -729,6 +727,8 @@ _mq_send (mqd_t mqd, const char *ptr, size_t len, unsigned int prio, struct msg_hdr *msghdr, *nmsghdr, *pmsghdr; struct mq_info *mqinfo; + pthread_testcancel (); + myfault efault; if (efault.faulted (EBADF)) return -1; @@ -860,6 +860,8 @@ _mq_receive (mqd_t mqd, char *ptr, size_t maxlen, unsigned int *priop, struct msg_hdr *msghdr; struct mq_info *mqinfo; + pthread_testcancel (); + myfault efault; if (efault.faulted (EBADF)) return -1; |