* fhandler.h (fhandler_termios::line_edit): Replace third argument with

passed-in termios struct.
* fhandler_console.cc (fhandler_console::read): Prior to loop, make a copy of
current termios for passing to line_edit prior so that all characters are
processed consistently.
* fhandler_tty.cc (fhandler_pty_master::write): Ditto.
(process_input): Make a copy of curent termios prior to read for use in
subsequent line_edit.
* fhandler_termios.cc (fhandler_termios::line_edit): Replace third parameter
with passed-in termios struct and use it throughout rather than the data from
the current fhandler_termios class.
This commit is contained in:
Christopher Faylor
2002-12-27 03:50:29 +00:00
parent 4a5c645e62
commit 46b73ef192
5 changed files with 53 additions and 35 deletions

View File

@ -247,6 +247,7 @@ fhandler_console::read (void *pv, size_t& buflen)
nwait = 2;
}
termios ti = tc->ti;
for (;;)
{
int bgres;
@ -461,7 +462,7 @@ fhandler_console::read (void *pv, size_t& buflen)
if (toadd)
{
line_edit_status res = line_edit (toadd, nread);
line_edit_status res = line_edit (toadd, nread, ti);
if (res == line_edit_signalled)
goto sig_exit;
else if (res == line_edit_input_done)