From 57a80207ff5f7045a45668cee827ce7f6906ccc8 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 12 Mar 2020 16:07:01 +0100 Subject: Cygwin: serial: try fix o_nonblock --- winsup/cygwin/fhandler_serial.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/winsup/cygwin/fhandler_serial.cc b/winsup/cygwin/fhandler_serial.cc index 69e5768..f92fc70 100644 --- a/winsup/cygwin/fhandler_serial.cc +++ b/winsup/cygwin/fhandler_serial.cc @@ -68,6 +68,16 @@ fhandler_serial::raw_read (void *ptr, size_t& ulen) goto err; else if (ev) termios_printf ("error detected %x", ev); + else if (is_nonblocking ()) + { + if (!st.cbInQue) + { + tot = -1; + set_errno (EAGAIN); + goto out; + } + inq = st.cbInQue; + } else if (st.cbInQue && !vtime_) inq = st.cbInQue; else if (!is_nonblocking () && !overlapped_armed) -- cgit v1.1