From 2221bebd718d2eb20a8cf352a15b15599067573b Mon Sep 17 00:00:00 2001 From: Takashi Yano Date: Tue, 2 Nov 2021 17:09:40 +0900 Subject: [PATCH] Cygwin: console: Fix yet another bug on input when signalled. - Currently, read() returns EINTR due to a bug if signal handler is SIG_DFL and the process is suspended by Ctrl-Z and restarted. This patch fixes the issue. --- winsup/cygwin/fhandler_termios.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/fhandler_termios.cc b/winsup/cygwin/fhandler_termios.cc index 012ecb356..b72f01f22 100644 --- a/winsup/cygwin/fhandler_termios.cc +++ b/winsup/cygwin/fhandler_termios.cc @@ -133,7 +133,8 @@ tty_min::kill_pgrp (int sig) siginfo_t si = {0}; si.si_signo = sig; si.si_code = SI_KERNEL; - last_sig = sig; + if (sig > 0 && sig < _NSIG) + last_sig = sig; for (unsigned i = 0; i < pids.npids; i++) {