diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2011-07-14 14:02:11 +0400 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2011-07-14 14:02:11 +0400 |
commit | 89244831608e314a7773ce7b2811148651828cbc (patch) | |
tree | f630fe790c81c760ac302699ad080ce1a628ad86 /winsup/cygwin/fhandler_console.cc | |
parent | 321969d8429a6830262a38cd91721daba5426da3 (diff) |
* fhandler_console.cc (fhandler_console::input_tcsetattr): Revert to
setting ENABLE_PROCESSED_INPUT depending on ISIG and IGNBRK.
(fhandler_console::tcgetattr): Set ISIG depending on
ENABLE_PROCESSED_INPUT as well.
Diffstat (limited to 'winsup/cygwin/fhandler_console.cc')
-rw-r--r-- | winsup/cygwin/fhandler_console.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/winsup/cygwin/fhandler_console.cc b/winsup/cygwin/fhandler_console.cc index 8eb96b9a7..bf42218f4 100644 --- a/winsup/cygwin/fhandler_console.cc +++ b/winsup/cygwin/fhandler_console.cc @@ -970,7 +970,7 @@ fhandler_console::input_tcsetattr (int, struct termios const *t) flags &= ~ENABLE_ECHO_INPUT; } - if (!(t->c_iflag & IGNBRK)) + if ((t->c_lflag & ISIG) && !(t->c_iflag & IGNBRK)) { flags |= ENABLE_PROCESSED_INPUT; } @@ -1025,7 +1025,9 @@ fhandler_console::tcgetattr (struct termios *t) if (flags & ENABLE_LINE_INPUT) t->c_lflag |= ICANON; - if (!(flags & ENABLE_PROCESSED_INPUT)) + if (flags & ENABLE_PROCESSED_INPUT) + t->c_lflag |= ISIG; + else t->c_iflag |= IGNBRK; /* What about ENABLE_WINDOW_INPUT |