diff options
| author | Bruce Evans <bde@FreeBSD.org> | 2000-01-29 13:55:02 +0000 |
|---|---|---|
| committer | Bruce Evans <bde@FreeBSD.org> | 2000-01-29 13:55:02 +0000 |
| commit | d0fb0d6db93aad274ca76ee403ded9e426043609 (patch) | |
| tree | e08bdd836f724b225d8af62e376f7fd074af2e80 /contrib | |
| parent | 210d0432a3c2e0189277080c0b9298b5ef17074c (diff) | |
Notes
Diffstat (limited to 'contrib')
| -rw-r--r-- | contrib/ncurses/ncurses/tinfo/lib_raw.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/contrib/ncurses/ncurses/tinfo/lib_raw.c b/contrib/ncurses/ncurses/tinfo/lib_raw.c index 61b422c1fb88..f4d99098e361 100644 --- a/contrib/ncurses/ncurses/tinfo/lib_raw.c +++ b/contrib/ncurses/ncurses/tinfo/lib_raw.c @@ -31,6 +31,7 @@ * and: Eric S. Raymond <esr@snark.thyrsus.com> * ****************************************************************************/ +/* $FreeBSD$ */ /* * raw.c @@ -74,6 +75,10 @@ MODULE_ID("$Id: lib_raw.c,v 1.3 1999/03/06 22:28:24 tom Exp $") #define AFTER(s) #endif /* TRACE */ +#ifdef TERMIOS +static tcflag_t iexten = 0; +#endif + int raw(void) { T((T_CALLED("raw()"))); @@ -88,7 +93,9 @@ int raw(void) #ifdef TERMIOS BEFORE("raw"); - cur_term->Nttyb.c_lflag &= ~(ICANON|ISIG); + if (iexten == 0) + iexten = cur_term->Nttyb.c_lflag & IEXTEN; + cur_term->Nttyb.c_lflag &= ~(ICANON|ISIG|IEXTEN); cur_term->Nttyb.c_iflag &= ~(COOKED_INPUT); cur_term->Nttyb.c_cc[VMIN] = 1; cur_term->Nttyb.c_cc[VTIME] = 0; @@ -157,7 +164,7 @@ int noraw(void) #ifdef TERMIOS BEFORE("noraw"); - cur_term->Nttyb.c_lflag |= ISIG|ICANON; + cur_term->Nttyb.c_lflag |= ISIG|ICANON|iexten; cur_term->Nttyb.c_iflag |= COOKED_INPUT; AFTER("noraw"); #else |
