* 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.
This commit is contained in:
@@ -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<len; i++)
|
||||
if (line_edit (p++, 1) == line_edit_error)
|
||||
break;
|
||||
return i;
|
||||
}
|
||||
|
||||
int __stdcall
|
||||
|
Reference in New Issue
Block a user