* 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:
@ -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)
|
||||
|
Reference in New Issue
Block a user