diff options
author | Takashi Yano <takashi.yano@nifty.ne.jp> | 2022-02-23 07:24:39 +0300 |
---|---|---|
committer | Takashi Yano <takashi.yano@nifty.ne.jp> | 2022-02-23 19:38:08 +0300 |
commit | d2b14c303c04989ae87bf1341357d059d266bf02 (patch) | |
tree | 44f065ee1826af8384c70208bd7b896cde5e41e4 /winsup/cygwin/sigproc.cc | |
parent | 4ed502ba02270adee7c46bb738374cab867baee1 (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.cc | 3 |
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: { |