Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/winsup
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2001-12-11 03:24:46 +0300
committerChristopher Faylor <me@cgf.cx>2001-12-11 03:24:46 +0300
commit40139114ea210664fec067383b12b885f0a60181 (patch)
treee70d9eb37fa4476bc84cee19260522363404ecfc /winsup
parentcf77faefc8c0a468fb70947ffcd78d0d5b890d6f (diff)
* fhandler.h (fhandler_serial::ev): New class member.
* fhandler_serial.cc (fhandler_serial::raw_read): Use class member for event status. * select.cc (peek_serial): Ditto.
Diffstat (limited to 'winsup')
-rw-r--r--winsup/cygwin/ChangeLog7
-rw-r--r--winsup/cygwin/fhandler.h1
-rw-r--r--winsup/cygwin/fhandler_serial.cc2
-rw-r--r--winsup/cygwin/select.cc8
4 files changed, 11 insertions, 7 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 8ed8ee974..bacc2624e 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,10 @@
+2001-12-10 Christopher Faylor <cgf@redhat.com>
+
+ * fhandler.h (fhandler_serial::ev): New class member.
+ * fhandler_serial.cc (fhandler_serial::raw_read): Use class member for
+ event status.
+ * select.cc (peek_serial): Ditto.
+
2001-12-07 Christopher Faylor <cgf@redhat.com>
* path.cc (path_conv::check): Use full path name for determining
diff --git a/winsup/cygwin/fhandler.h b/winsup/cygwin/fhandler.h
index 3e89a3bba..336e61556 100644
--- a/winsup/cygwin/fhandler.h
+++ b/winsup/cygwin/fhandler.h
@@ -582,6 +582,7 @@ class fhandler_serial: public fhandler_base
public:
int overlapped_armed;
OVERLAPPED io_status;
+ DWORD ev;
/* Constructor */
fhandler_serial (int unit);
diff --git a/winsup/cygwin/fhandler_serial.cc b/winsup/cygwin/fhandler_serial.cc
index a52dbb4ba..b4a813b04 100644
--- a/winsup/cygwin/fhandler_serial.cc
+++ b/winsup/cygwin/fhandler_serial.cc
@@ -60,7 +60,6 @@ fhandler_serial::raw_read (void *ptr, size_t ulen)
for (n = 0, tot = 0; ulen; ulen -= n, ptr = (char *)ptr + n)
{
- DWORD ev;
COMSTAT st;
DWORD inq = 1;
@@ -374,7 +373,6 @@ fhandler_serial::tcflush (int queue)
(we stop after 1000 chars anyway) */
for (int max = 1000; max > 0; max--)
{
- DWORD ev;
COMSTAT st;
if (!PurgeComm (get_handle (), PURGE_RXABORT | PURGE_RXCLEAR))
break;
diff --git a/winsup/cygwin/select.cc b/winsup/cygwin/select.cc
index c54e72723..56d818d56 100644
--- a/winsup/cygwin/select.cc
+++ b/winsup/cygwin/select.cc
@@ -865,7 +865,6 @@ struct serialinf
static int
peek_serial (select_record *s, bool)
{
- DWORD ev;
COMSTAT st;
fhandler_serial *fh = (fhandler_serial *)s->fh;
@@ -890,19 +889,18 @@ peek_serial (select_record *s, bool)
if (!fh->overlapped_armed)
{
- DWORD ev;
COMSTAT st;
ResetEvent (fh->io_status.hEvent);
- if (!ClearCommError (h, &ev, &st))
+ if (!ClearCommError (h, &fh->ev, &st))
{
debug_printf ("ClearCommError");
goto err;
}
else if (st.cbInQue)
return s->read_ready = true;
- else if (WaitCommEvent (h, &ev, &fh->io_status))
+ else if (WaitCommEvent (h, &fh->ev, &fh->io_status))
return s->read_ready = true;
else if (GetLastError () == ERROR_IO_PENDING)
fh->overlapped_armed = 1;
@@ -923,7 +921,7 @@ peek_serial (select_record *s, bool)
switch (WaitForMultipleObjects (2, w4, FALSE, to))
{
case WAIT_OBJECT_0:
- if (!ClearCommError (h, &ev, &st))
+ if (!ClearCommError (h, &fh->ev, &st))
{
debug_printf ("ClearCommError");
goto err;