Mercurial > emacs
changeset 10108:2844db63605f
(child_setup_tty): Use CDISABLE for setting VERASE, VKILL.
(init_sys_modes) [SET_LINE_DISCIPLINE]: Set specified line discipline.
(reset_sys_modes) [SET_LINE_DISCIPLINE]: Restore old line discipline.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 04 Dec 1994 17:06:56 +0000 |
parents | 2af74ff52cd0 |
children | 869e177ca872 |
files | src/sysdep.c |
diffstat | 1 files changed, 15 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/sysdep.c Sun Dec 04 16:51:38 1994 +0000 +++ b/src/sysdep.c Sun Dec 04 17:06:56 1994 +0000 @@ -524,8 +524,8 @@ s.main.c_lflag |= ICANON; /* Enable erase/kill and eof processing */ s.main.c_cc[VEOF] = 04; /* insure that EOF is Control-D */ - s.main.c_cc[VERASE] = 0377; /* disable erase processing */ - s.main.c_cc[VKILL] = 0377; /* disable kill processing */ + s.main.c_cc[VERASE] = CDISABLE; /* disable erase processing */ + s.main.c_cc[VKILL] = CDISABLE; /* disable kill processing */ #ifdef HPUX s.main.c_cflag = (s.main.c_cflag & ~CBAUD) | B9600; /* baud rate sanity */ @@ -1290,9 +1290,14 @@ tty.main.c_cc[VSTOP] = CDISABLE; #endif /* VSTOP */ #endif /* mips or HAVE_TCATTR */ +#ifdef SET_LINE_DISCIPLINE + /* Need to explicitely request TERMIODISC line discipline or + Ultrix's termios does not work correctly. */ + tty.main.c_line = SET_LINE_DISCIPLINE; +#endif #ifdef AIX #ifndef IBMR2AIX - /* AIX enhanced edit loses NULs, so disable it */ + /* AIX enhanced edit loses NULs, so disable it. */ tty.main.c_line = 0; tty.main.c_iflag &= ~ASCEDIT; #else @@ -1643,6 +1648,13 @@ dos_ttcooked (); #endif +#ifdef SET_LINE_DISCIPLINE + /* Ultrix's termios *ignores* any line discipline except TERMIODISC. + A different old line discipline is therefore not restored, yet. + Restore the old line discipline by hand. */ + ioctl (0, TIOCSETD, &old_tty.main.c_line); +#endif + #ifdef AIXHFT hft_reset (); #endif