Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com From: Chris Faylor Date: Thu, 7 Sep 2000 12:26:43 -0400 To: cygwin-patches AT sources DOT redhat DOT com Cc: cygwin-developers AT sources DOT redhat DOT com Subject: tty handling patches Message-ID: <20000907122643.A22869@cygnus.com> Reply-To: cygwin-developers AT sources DOT redhat DOT com Mail-Followup-To: cygwin-patches AT sources DOT redhat DOT com, cygwin-developers AT sources DOT redhat DOT com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.6i I've just made some changes to the way Cygwin handles CYGWIN=tty. They speed output up ENORMOUSLY but I may have introduced synchronization issues between the tty child and the tty master. This also affects ptys. These changes will obviously be in the next snapshot but I would appreciate it if anyone who has the time could build this and check it out. I'll probably announce this on the cygwin mailing list but I'd like to have a slightly more limited audience try it out first. cgf Thu Sep 7 12:14:43 2000 Christopher Faylor Split out tty and shared_info stuff into their own headers and use throughout. Include sys/termios.h for files which need it. * tty.h: New file. * shared_info.h: New file. * fhandler.h: Move inline methods that rely on tty stuff to fhandler_console.cc. * fhandler_tty.cc (fhandler_pty_master::process_slave_output): Set output_done_event immediately after reading data to speed up tty output processing. (process_output): Set write_error to errno or zero. (fhandler_tty_slave::write): Check previous write error prior to writing to slave end of pipe. This allows tty output to be slightly less synchronous. * fhandler_console.cc (fhandler_console::tcsetpgrp): Moved here from fhandler.h. (fhandler_console::set_input_state): Ditto.