diff options
Diffstat (limited to 'winsup/cygwin/signal.cc')
-rw-r--r-- | winsup/cygwin/signal.cc | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/winsup/cygwin/signal.cc b/winsup/cygwin/signal.cc index 935083ce1..b3a0e31c1 100644 --- a/winsup/cygwin/signal.cc +++ b/winsup/cygwin/signal.cc @@ -147,17 +147,15 @@ handle_sigprocmask (int how, const sigset_t *set, sigset_t *oldset, sigset_t& op return -1; } + myfault efault; + if (efault.faulted (EFAULT)) + return -1; + if (oldset) - { - if (check_null_invalid_struct_errno (oldset)) - return -1; - *oldset = opmask; - } + *oldset = opmask; if (set) { - if (check_invalid_read_struct_errno (set)) - return -1; sigset_t newmask = opmask; switch (how) { |