Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/wait.cc')
-rw-r--r--winsup/cygwin/wait.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/winsup/cygwin/wait.cc b/winsup/cygwin/wait.cc
index 759afed25..79c8bf64a 100644
--- a/winsup/cygwin/wait.cc
+++ b/winsup/cygwin/wait.cc
@@ -55,7 +55,6 @@ wait4 (int intpid, int *status, int options, struct rusage *r)
while (1)
{
sig_dispatch_pending ();
- sigframe thisframe (mainthread);
sawsig = 0;
if (options & ~(WNOHANG | WUNTRACED))
{
@@ -100,6 +99,7 @@ wait4 (int intpid, int *status, int options, struct rusage *r)
if (w->status == -1)
{
+ call_signal_handler_now ();
set_sig_errno (EINTR);
sawsig = 1;
res = -1;
@@ -115,7 +115,7 @@ wait4 (int intpid, int *status, int options, struct rusage *r)
*status = w->status;
done:
- if (!sawsig || !thisframe.call_signal_handler ())
+ if (!sawsig || !call_signal_handler_now ())
break;
}