OSDN Git Service

* fhandler_tty.cc (fhandler_tty_master::init): Set initial size of tty to that
authorcgf <cgf>
Fri, 27 Dec 2002 03:54:59 +0000 (03:54 +0000)
committercgf <cgf>
Fri, 27 Dec 2002 03:54:59 +0000 (03:54 +0000)
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.

ChangeLog
winsup/cygwin/fhandler_tty.cc

index 0f3da18..a226b2e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -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.
index 45afbca..fd0789b 100644 (file)
@@ -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);
     }
 }