* exceptions.cc (sig_handle_tty_stop): Don't send SIGCHLD if parent doesn't
want it. (sig_handle): Don't check for SA_NOCLDSTOP here. We don't have enough information.
This commit is contained in:
parent
5946622e72
commit
9e73b3397b
|
@ -1,3 +1,10 @@
|
||||||
|
2002-01-19 Christopher Faylor <cgf@redhat.com>
|
||||||
|
|
||||||
|
* exceptions.cc (sig_handle_tty_stop): Don't send SIGCHLD if parent
|
||||||
|
doesn't want it.
|
||||||
|
(sig_handle): Don't check for SA_NOCLDSTOP here. We don't have enough
|
||||||
|
information.
|
||||||
|
|
||||||
2002-01-19 Christopher Faylor <cgf@redhat.com>
|
2002-01-19 Christopher Faylor <cgf@redhat.com>
|
||||||
|
|
||||||
* include/cygwin/version.h: Bump DLL minor number.
|
* include/cygwin/version.h: Bump DLL minor number.
|
||||||
|
|
|
@ -600,6 +600,7 @@ sig_handle_tty_stop (int sig)
|
||||||
myself->process_state &= ~PID_STOPPED;
|
myself->process_state &= ~PID_STOPPED;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
myself->stopsig = sig;
|
myself->stopsig = sig;
|
||||||
/* See if we have a living parent. If so, send it a special signal.
|
/* See if we have a living parent. If so, send it a special signal.
|
||||||
* It will figure out exactly which pid has stopped by scanning
|
* It will figure out exactly which pid has stopped by scanning
|
||||||
|
@ -608,7 +609,8 @@ sig_handle_tty_stop (int sig)
|
||||||
if (my_parent_is_alive ())
|
if (my_parent_is_alive ())
|
||||||
{
|
{
|
||||||
pinfo parent (myself->ppid);
|
pinfo parent (myself->ppid);
|
||||||
sig_send (parent, SIGCHLD);
|
if (!(parent->getsig (SIGCHLD).sa_flags & SA_NOCLDSTOP))
|
||||||
|
sig_send (parent, SIGCHLD);
|
||||||
}
|
}
|
||||||
sigproc_printf ("process %d stopped by signal %d, myself->ppid_handle %p",
|
sigproc_printf ("process %d stopped by signal %d, myself->ppid_handle %p",
|
||||||
myself->pid, sig, myself->ppid_handle);
|
myself->pid, sig, myself->ppid_handle);
|
||||||
|
@ -1032,7 +1034,7 @@ sig_handle (int sig, bool thisproc)
|
||||||
if (handler == (void *) SIG_ERR)
|
if (handler == (void *) SIG_ERR)
|
||||||
goto exit_sig;
|
goto exit_sig;
|
||||||
|
|
||||||
if ((sig == SIGCHLD) && (thissig.sa_flags & SA_NOCLDSTOP))
|
if (sig == SIGCHLD)
|
||||||
goto done;
|
goto done;
|
||||||
|
|
||||||
goto dosig;
|
goto dosig;
|
||||||
|
|
Loading…
Reference in New Issue