* fhandler_termios.cc (fhandler_termios::tcsetpgrp): Send __SIGSETPGRP
pseudo signal to process group instead of just calling init_console_handler. * sigproc.cc (wait_sig): Call init_console_handler here on __SIGSETPGRP signal. * sigproc.h (__SIGSETPGRP): Define.
This commit is contained in:
parent
efe716bb8e
commit
852908e82d
|
@ -1,3 +1,12 @@
|
||||||
|
2011-10-06 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* fhandler_termios.cc (fhandler_termios::tcsetpgrp): Send __SIGSETPGRP
|
||||||
|
pseudo signal to process group instead of just calling
|
||||||
|
init_console_handler.
|
||||||
|
* sigproc.cc (wait_sig): Call init_console_handler here on __SIGSETPGRP
|
||||||
|
signal.
|
||||||
|
* sigproc.h (__SIGSETPGRP): Define.
|
||||||
|
|
||||||
2011-10-06 Christian Franke <franke@computer.org>
|
2011-10-06 Christian Franke <franke@computer.org>
|
||||||
|
|
||||||
* include/cygwin/wait.h: Use new __wait_status_to_int()
|
* include/cygwin/wait.h: Use new __wait_status_to_int()
|
||||||
|
|
|
@ -78,7 +78,8 @@ fhandler_termios::tcsetpgrp (const pid_t pgid)
|
||||||
{
|
{
|
||||||
case bg_ok:
|
case bg_ok:
|
||||||
tc ()->setpgid (pgid);
|
tc ()->setpgid (pgid);
|
||||||
init_console_handler (tc ()->is_console);
|
if (tc ()->is_console)
|
||||||
|
tc ()->kill_pgrp (__SIGSETPGRP);
|
||||||
res = 0;
|
res = 0;
|
||||||
break;
|
break;
|
||||||
case bg_signalled:
|
case bg_signalled:
|
||||||
|
|
|
@ -1225,6 +1225,9 @@ wait_sig (VOID *)
|
||||||
my_sendsig = NULL;
|
my_sendsig = NULL;
|
||||||
sigproc_printf ("saw __SIGEXIT");
|
sigproc_printf ("saw __SIGEXIT");
|
||||||
break; /* handle below */
|
break; /* handle below */
|
||||||
|
case __SIGSETPGRP:
|
||||||
|
init_console_handler (true);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
if (pack.si.si_signo < 0)
|
if (pack.si.si_signo < 0)
|
||||||
sig_clear (-pack.si.si_signo);
|
sig_clear (-pack.si.si_signo);
|
||||||
|
|
|
@ -23,7 +23,8 @@ enum
|
||||||
__SIGFLUSHFAST = -(NSIG + 6),
|
__SIGFLUSHFAST = -(NSIG + 6),
|
||||||
__SIGHOLD = -(NSIG + 7),
|
__SIGHOLD = -(NSIG + 7),
|
||||||
__SIGNOHOLD = -(NSIG + 8),
|
__SIGNOHOLD = -(NSIG + 8),
|
||||||
__SIGEXIT = -(NSIG + 9)
|
__SIGEXIT = -(NSIG + 9),
|
||||||
|
__SIGSETPGRP = -(NSIG + 10)
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue