Windows does not have POSIX-like signals, and so we ignore all operations on the non-existent signal mask machinery. Do not turn sigemptyset into a function, but leave it a macro that erases the code in the argument because it is used to set sa_mask of a struct sigaction, but our dummy in mingw.h does not have that member. Signed-off-by: Johannes Sixt <j6t@xxxxxxxx> --- compat/mingw.h | 7 ++++++- t/t0005-signals.sh | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/compat/mingw.h b/compat/mingw.h index 0b5f2fe..0e42653 100644 --- a/compat/mingw.h +++ b/compat/mingw.h @@ -69,7 +69,6 @@ struct sigaction { sig_handler_t sa_handler; unsigned sa_flags; }; -#define sigemptyset(x) (void)0 #define SA_RESTART 0 struct itimerval { @@ -116,6 +115,12 @@ static inline int fcntl(int fd, int cmd, ...) } /* bash cannot reliably detect negative return codes as failure */ #define exit(code) exit((code) & 0xff) +#define sigemptyset(x) (void)0 +static inline int sigaddset(sigset_t *set, int signum) +{ return 0; } +#define SIG_UNBLOCK 0 +static inline int sigprocmask(int how, const sigset_t *set, sigset_t *oldset) +{ return 0; } /* * simple adaptors diff --git a/t/t0005-signals.sh b/t/t0005-signals.sh index 638a355..aeea50c 100755 --- a/t/t0005-signals.sh +++ b/t/t0005-signals.sh @@ -39,12 +39,12 @@ test_expect_success 'create blob' ' git add file ' -test_expect_success 'a constipated git dies with SIGPIPE' ' +test_expect_success !MINGW 'a constipated git dies with SIGPIPE' ' OUT=$( ((large_git; echo $? 1>&3) | :) 3>&1 ) test "$OUT" -eq 141 ' -test_expect_success 'a constipated git dies with SIGPIPE even if parent ignores it' ' +test_expect_success !MINGW 'a constipated git dies with SIGPIPE even if parent ignores it' ' OUT=$( ((trap "" PIPE; large_git; echo $? 1>&3) | :) 3>&1 ) test "$OUT" -eq 141 ' -- 2.0.0.12.gbcf935e -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html