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:
authorTakashi Yano <takashi.yano@nifty.ne.jp>2022-02-23 07:24:39 +0300
committerTakashi Yano <takashi.yano@nifty.ne.jp>2022-02-23 19:38:08 +0300
commitd2b14c303c04989ae87bf1341357d059d266bf02 (patch)
tree44f065ee1826af8384c70208bd7b896cde5e41e4 /winsup/cygwin/sigproc.cc
parent4ed502ba02270adee7c46bb738374cab867baee1 (diff)
Cygwin: console: Redesign handling of special keys.
- This patch rearranges the cooperation between cons_master_thread, line_edit, and ctrl_c_handler so that only one of them operates at the same time. Since these handle Ctrl-C individually, so the signal may be sent multiple times to the process. This patch fixes the issue.
Diffstat (limited to 'winsup/cygwin/sigproc.cc')
-rw-r--r--winsup/cygwin/sigproc.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc
index 4d7d273ae..16ea5031b 100644
--- a/winsup/cygwin/sigproc.cc
+++ b/winsup/cygwin/sigproc.cc
@@ -1392,7 +1392,8 @@ wait_sig (VOID *)
sig_held = true;
break;
case __SIGSETPGRP:
- init_console_handler (true);
+ if (::cygheap->ctty)
+ init_console_handler (::cygheap->ctty->need_console_handler ());
break;
case __SIGTHREADEXIT:
{