From: cgf Date: Fri, 9 Sep 2005 03:00:34 +0000 (+0000) Subject: * fhandler_serial.cc (fhandler_serial::tcgetattr): Just zero c_cflag here X-Git-Tag: pre_wait_sig_exit~26 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=53891ad7ccf034c2ff3f139507ffda8dd329d025;p=pf3gnuchains%2Fpf3gnuchains4x.git * fhandler_serial.cc (fhandler_serial::tcgetattr): Just zero c_cflag here rather than clearing CBAUD after the fact. --- diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 4ad6347a20..034e350bba 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,10 @@ 2005-09-08 Christopher Faylor + * fhandler_serial.cc (fhandler_serial::tcgetattr): Just zero c_cflag + here rather than clearing CBAUD after the fact. + +2005-09-08 Christopher Faylor + * fhandler_serial.cc (fhandler_serial::ioctl): Always return 0 for window size. * termios.cc (tcgetattr): Clear out baud part of c_cflag since it is diff --git a/winsup/cygwin/fhandler_serial.cc b/winsup/cygwin/fhandler_serial.cc index f7f9d60bea..dcf4206c5a 100644 --- a/winsup/cygwin/fhandler_serial.cc +++ b/winsup/cygwin/fhandler_serial.cc @@ -911,44 +911,45 @@ fhandler_serial::tcgetattr (struct termios *t) /* for safety */ memset (t, 0, sizeof (*t)); + t->c_cflag = 0; /* -------------- Baud rate ------------------ */ switch (state.BaudRate) { case CBR_110: - t->c_cflag = t->c_ospeed = t->c_ispeed = B110; + t->c_ospeed = t->c_ispeed = B110; break; case CBR_300: - t->c_cflag = t->c_ospeed = t->c_ispeed = B300; + t->c_ospeed = t->c_ispeed = B300; break; case CBR_600: - t->c_cflag = t->c_ospeed = t->c_ispeed = B600; + t->c_ospeed = t->c_ispeed = B600; break; case CBR_1200: - t->c_cflag = t->c_ospeed = t->c_ispeed = B1200; + t->c_ospeed = t->c_ispeed = B1200; break; case CBR_2400: - t->c_cflag = t->c_ospeed = t->c_ispeed = B2400; + t->c_ospeed = t->c_ispeed = B2400; break; case CBR_4800: - t->c_cflag = t->c_ospeed = t->c_ispeed = B4800; + t->c_ospeed = t->c_ispeed = B4800; break; case CBR_9600: - t->c_cflag = t->c_ospeed = t->c_ispeed = B9600; + t->c_ospeed = t->c_ispeed = B9600; break; case CBR_19200: - t->c_cflag = t->c_ospeed = t->c_ispeed = B19200; + t->c_ospeed = t->c_ispeed = B19200; break; case CBR_38400: - t->c_cflag = t->c_ospeed = t->c_ispeed = B38400; + t->c_ospeed = t->c_ispeed = B38400; break; case CBR_57600: - t->c_cflag = t->c_ospeed = t->c_ispeed = B57600; + t->c_ospeed = t->c_ispeed = B57600; break; case CBR_115200: - t->c_cflag = t->c_ospeed = t->c_ispeed = B115200; + t->c_ospeed = t->c_ispeed = B115200; break; case 230400: /* CBR_230400 - not defined */ - t->c_cflag = t->c_ospeed = t->c_ispeed = B230400; + t->c_ospeed = t->c_ispeed = B230400; break; default: /* Unsupported baud rate! */ diff --git a/winsup/cygwin/termios.cc b/winsup/cygwin/termios.cc index e6a6517f23..6e0ab3e9fb 100644 --- a/winsup/cygwin/termios.cc +++ b/winsup/cygwin/termios.cc @@ -179,10 +179,7 @@ tcgetattr (int fd, struct termios *in_t) else if (!cfd->is_tty ()) set_errno (ENOTTY); else if ((res = cfd->tcgetattr (t)) == 0) - { - t->c_cflag &= ~CBAUD; - __toapp_termios (in_t, t); - } + __toapp_termios (in_t, t); if (res) termios_printf ("%d = tcgetattr (%d, %p)", res, fd, in_t);