diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | winsup/cygwin/fhandler_tty.cc | 6 |
2 files changed, 12 insertions, 2 deletions
@@ -1,3 +1,11 @@ +2002-12-26 Christopher Faylor <cgf@redhat.com> + + * fhandler_tty.cc (fhandler_tty_master::init): Set initial size of tty + to that of console in which tty is operating. + (process_input): Semi-revert previous change. Need to just use current + terminfo settings since this function is running in a thread, blocked + when the terminfo changes. + 2002-12-24 Andreas Schwab <schwab@suse.de> * Makefile.tpl (multilib.out): Fix missing space. diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc index 45afbca..fd0789b 100644 --- a/winsup/cygwin/fhandler_tty.cc +++ b/winsup/cygwin/fhandler_tty.cc @@ -54,6 +54,9 @@ fhandler_tty_master::init (int ntty) termios ti; memset (&ti, 0, sizeof (ti)); console->tcsetattr (0, &ti); + winsize w; + console->ioctl (TIOCGWINSZ, &w); + this->ioctl (TIOCSWINSZ, &w); ttynum = ntty; @@ -198,9 +201,8 @@ process_input (void *) while (1) { size_t nraw = INP_BUFFER_SIZE; - termios ti = tty_master->get_ttyp ()->ti; tty_master->console->read ((void *) rawbuf, nraw); - (void) tty_master->line_edit (rawbuf, nraw, ti); + (void) tty_master->line_edit (rawbuf, nraw, tty_master->get_ttyp ()->ti); } } |