From 49dd6fc61e991a533ae3f1167d48bb07b3391311 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Thu, 5 Dec 2002 16:24:52 +0000 Subject: * fhandler.h (fhandler_termios::line_edit): Change return from an int to an enum to allow the function to return an error. * fhandler_console.cc (fhandler_console::read): Update the line_edit call to use the new enum. * fhandler_termios.cc (fhandler_termios::line_edit): Change return from an int to an enum to allow the function to return an error. Put put_readahead call before doecho for future patch. * fhandler_tty.cc (fhandler_pty_master::write): Change to call line_edit one character at a time, and stop if an error occurs. --- winsup/cygwin/fhandler_tty.cc | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'winsup/cygwin/fhandler_tty.cc') diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc index dc0f0fceb..3b47f567a 100644 --- a/winsup/cygwin/fhandler_tty.cc +++ b/winsup/cygwin/fhandler_tty.cc @@ -167,7 +167,7 @@ fhandler_pty_master::accept_input () get_ttyp ()->read_retval = -1; break; } - else + else get_ttyp ()->read_retval = 1; p += written; @@ -1077,8 +1077,12 @@ fhandler_pty_master::close () int fhandler_pty_master::write (const void *ptr, size_t len) { - (void) line_edit ((char *) ptr, len); - return len; + size_t i; + char *p = (char *) ptr; + for (i=0; i