summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fhandler_console.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2002-12-27 03:50:29 +0000
committerChristopher Faylor <me@cgf.cx>2002-12-27 03:50:29 +0000
commit46b73ef192bc8e1ef3db88d1da99dfbe28bb371b (patch)
tree0df82ef446efc511b01e4cae86426ef1050f7115 /winsup/cygwin/fhandler_console.cc
parent4a5c645e6280415fc3fab8d0ae8d1b2da129ee6c (diff)
downloadcygnal-46b73ef192bc8e1ef3db88d1da99dfbe28bb371b.tar.gz
cygnal-46b73ef192bc8e1ef3db88d1da99dfbe28bb371b.tar.bz2
cygnal-46b73ef192bc8e1ef3db88d1da99dfbe28bb371b.zip
* 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.
Diffstat (limited to 'winsup/cygwin/fhandler_console.cc')
-rw-r--r--winsup/cygwin/fhandler_console.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/winsup/cygwin/fhandler_console.cc b/winsup/cygwin/fhandler_console.cc
index 96ef4284f..41c1cca21 100644
--- a/winsup/cygwin/fhandler_console.cc
+++ b/winsup/cygwin/fhandler_console.cc
@@ -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)