]> Savannah Git Hosting - gnulib.git/commitdiff
pipe-filter-gi: Fix test failure on native Windows.
authorBruno Haible <bruno@clisp.org>
Sun, 11 Sep 2022 00:53:07 +0000 (02:53 +0200)
committerBruno Haible <bruno@clisp.org>
Sun, 11 Sep 2022 01:01:56 +0000 (03:01 +0200)
* lib/pipe-filter-aux.h (write): Redefine on native Windows.

ChangeLog
lib/pipe-filter-aux.h

index 3ba8a123367dd3b0aeaa4f62dfa36158a243fed6..c5d3c21fb63519509d151fffea5070f29cc2be1d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2022-09-10  Bruno Haible  <bruno@clisp.org>
+
+       pipe-filter-gi: Fix test failure on native Windows.
+       * lib/pipe-filter-aux.h (write): Redefine on native Windows.
+
 2022-09-10  Bruno Haible  <bruno@clisp.org>
 
        stdbool C++ tests: Fix for C++20.
index cda8ff7c34e63eea8b5df550d64ebc80ed4962ab..df7dac6321e79f9274024f337370ce1b7db0de3b 100644 (file)
@@ -23,6 +23,17 @@ _GL_INLINE_HEADER_BEGIN
 # define PIPE_FILTER_AUX_INLINE _GL_INLINE
 #endif
 
+#if defined _WIN32 && ! defined __CYGWIN__
+/* In the pipe-filter-* modules we want to use the write() function that is
+   not overridden to emulate SIGPIPE behaviour, because we don't want force
+   the caller to do
+     signal (SIGPIPE, SIG_DFL);
+   To reproduce the problem, use a gnulib testdir for the modules
+   'pipe-filter-gi', 'write', 'sigpipe'.  */
+# undef write
+# define write _write
+#endif
+
 #ifndef SSIZE_MAX
 # define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2))
 #endif