* cygwait.cc (cancelable_wait): Add some debugging-only output.
* exceptions.cc (sig_handle_tty_stop): Make sure that incyg is cleared when exiting if we have no parent process. Only wait for signal_arrived. (sigpacket::process): Make continue_now a bool. Delay sending signal_arrived until the end. Make code more defensive to avoid calling signal handler when stopped. Only set signal_arrived when stopped. * sigproc.cc (sig_hold): Rename from sigCONT. Make static. (sig_send): Accommodate sigCONT -> sig_hold rename. (wait_sig): Ditto. * sigproc.h (sigCONT): Delete declaration. * fhandler_console.cc (fhandler_console::write): Use new '%0c' facility to print characters. Change to paranoid to avoid excessive strace output. * fhandler_tty.cc (fhandler_pty_master::accept_input): Make frequent strace printf "paranoid" to help cut down on strace output size. * signal.cc (sigsuspend): Add standard syscall strace output. (sigpause): Ditto. (pause): Ditto. * cygtls.h (_cygtls::reset_signal_arrived): New function.
This commit is contained in:
@@ -517,19 +517,25 @@ sigfillset (sigset_t *set)
|
||||
extern "C" int
|
||||
sigsuspend (const sigset_t *set)
|
||||
{
|
||||
return handle_sigsuspend (*set);
|
||||
int res = handle_sigsuspend (*set);
|
||||
syscall_printf ("%R = sigsuspend(%p)", res, set);
|
||||
return res;
|
||||
}
|
||||
|
||||
extern "C" int
|
||||
sigpause (int signal_mask)
|
||||
{
|
||||
return handle_sigsuspend ((sigset_t) signal_mask);
|
||||
int res = handle_sigsuspend ((sigset_t) signal_mask);
|
||||
syscall_printf ("%R = sigpause(%p)", res, signal_mask);
|
||||
return res;
|
||||
}
|
||||
|
||||
extern "C" int
|
||||
pause (void)
|
||||
{
|
||||
return handle_sigsuspend (_my_tls.sigmask);
|
||||
int res = handle_sigsuspend (_my_tls.sigmask);
|
||||
syscall_printf ("%R = pause()", res);
|
||||
return res;
|
||||
}
|
||||
|
||||
extern "C" int
|
||||
|
Reference in New Issue
Block a user