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
diff options
context:
space:
mode:
authorTakashi Yano <takashi.yano@nifty.ne.jp>2021-11-07 06:47:18 +0300
committerCorinna Vinschen <corinna@vinschen.de>2021-11-08 12:48:23 +0300
commit1f7aa67b1c9a2db50b04a0f7e539c780b93ccca1 (patch)
tree2dd066b62685f13d35059ce24a46826bb11126bb
parent0390cc85727b0165b5cdfcff7578cac94ae3371d (diff)
Cygwin: pipe: Avoid false EOF while reading output of C# programs.cygwin-3_3_2-release
- If output of C# program is redirected to pipe, pipe reader falsely detects EOF. This happens after overhaul of pipe implementation. This patch fixes the issue. Addresses: https://cygwin.com/pipermail/cygwin/2021-November/249777.html
-rw-r--r--winsup/cygwin/fhandler_pipe.cc3
-rw-r--r--winsup/cygwin/release/3.3.24
2 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/fhandler_pipe.cc b/winsup/cygwin/fhandler_pipe.cc
index 63e432160..724944336 100644
--- a/winsup/cygwin/fhandler_pipe.cc
+++ b/winsup/cygwin/fhandler_pipe.cc
@@ -393,7 +393,8 @@ fhandler_pipe::raw_read (void *ptr, size_t& len)
}
}
- if (nbytes_now == 0 || status == STATUS_BUFFER_OVERFLOW)
+ if ((nbytes_now == 0 && !NT_SUCCESS (status))
+ || status == STATUS_BUFFER_OVERFLOW)
break;
}
ReleaseMutex (read_mtx);
diff --git a/winsup/cygwin/release/3.3.2 b/winsup/cygwin/release/3.3.2
index 263c3efe6..2e48e39be 100644
--- a/winsup/cygwin/release/3.3.2
+++ b/winsup/cygwin/release/3.3.2
@@ -8,3 +8,7 @@ Bug Fixes
Addresses: https://sourceware.org/pipermail/newlib/2021/018626.html
- Fix a permission problem when writing ACLs on Samba.
+
+- Fix the issue that pipe reader falsely detects EOF if the output of
+ the C# program is redirected to the pipe.
+ Addresses: https://cygwin.com/pipermail/cygwin/2021-November/249777.html