The Cygwin people don't stop adding regressions in the newest Cygwin
versions. Now it's reading from /dev/null that is broken. It makes
all mingw and MSVC builds fail.

This patch adds a workaround.


2025-04-14  Bruno Haible  <br...@clisp.org>

        select tests: Work around a Cygwin bug.
        * tests/test-select-in.sh: Skip the /dev/null test on Cygwin 3.6.x.

diff --git a/tests/test-select-in.sh b/tests/test-select-in.sh
index ad86ea2526..9c74ca0c63 100755
--- a/tests/test-select-in.sh
+++ b/tests/test-select-in.sh
@@ -28,7 +28,18 @@ test `cat t-select-in.tmp` = "1" || exit 1
 
 # Special files.
 # This part of the test is known to fail on Solaris 2.6 and older.
-
+# Also it fails in Cygwin 3.6.1, due to a Cygwin regression.
+# <https://sourceware.org/pipermail/cygwin/2025-April/257940.html>
+# <https://sourceware.org/pipermail/cygwin/2025-April/257952.html>
+case `uname -s` in
+  CYGWIN*)
+    case `uname -r` in
+      3.6.*)
+        echo "Skipping test: known Cygwin 3.6.x bug"
+        exit 77;;
+    esac
+    ;;
+esac
 rm -f t-select-in.tmp
 ${CHECKER} ./test-select-fd${EXEEXT} r 0 t-select-in.tmp < /dev/null
 test `cat t-select-in.tmp` = "1" || exit 1




Reply via email to