* fhandler.h (fhandler_tty_slave): Declare new methods.
* select.cc (fhandler_tty_slave::select_read): New method. * select.cc (fhandler_tty_slave::ready_for_read): Ditto. * select.cc (verify_tty_slave): New function. * fhandler_termios.cc (fhandler_termios::line_edit): Empty input buffer on signal. * fhandler_tty.cc (fhandler_tty_slave::read): Check for input data after reading from pipe. Reset event if input pipe is empty. * tty.h (class tty): Allow creating events with manual reset. * tty.cc (tty::get_event): Use manual_reset flag. * tty.cc (tty::common_init): Create input_available_event with manual reset.
This commit is contained in:
@@ -209,6 +209,7 @@ fhandler_termios::line_edit (const char *rptr, int nread, int always_accept)
|
||||
goto not_a_sig;
|
||||
|
||||
termios_printf ("got interrupt %d, sending signal %d", c, sig);
|
||||
eat_readahead (-1);
|
||||
kill_pgrp (tc->getpgid (), sig);
|
||||
tc->ti.c_lflag &= ~FLUSHO;
|
||||
sawsig = 1;
|
||||
|
Reference in New Issue
Block a user