diff options
Diffstat (limited to 'winsup/cygwin/syscalls.cc')
-rw-r--r-- | winsup/cygwin/syscalls.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc index 94c4b0811..edfa3ed2f 100644 --- a/winsup/cygwin/syscalls.cc +++ b/winsup/cygwin/syscalls.cc @@ -384,6 +384,7 @@ readv (int fd, const struct iovec *const iov, const int iovcnt) while (1) { + sig_dispatch_pending (0); sigframe thisframe (mainthread); cygheap_fdget cfd (fd); @@ -455,6 +456,7 @@ extern "C" ssize_t writev (const int fd, const struct iovec *const iov, const int iovcnt) { int res = -1; + sig_dispatch_pending (0); const ssize_t tot = check_iovec_for_write (iov, iovcnt); sigframe thisframe (mainthread); @@ -510,6 +512,7 @@ open (const char *unix_path, int flags, ...) int res = -1; va_list ap; mode_t mode = 0; + sig_dispatch_pending (0); sigframe thisframe (mainthread); syscall_printf ("open (%s, %p)", unix_path, flags); |