Hi Eric, On Wed, 19 Jun 2019, Eric Sunshine wrote: > On Tue, Jun 18, 2019 at 8:24 AM Jeff Hostetler via GitGitGadget > <gitgitgadget@xxxxxxxxx> wrote: > > This special-cases various signals that are not supported on Windows, > > such as SIGPIPE. These cause the UCRT to throw asserts (at least in > > debug mode). > > > > Signed-off-by: Jeff Hostetler <jeffhost@xxxxxxxxxxxxx> > > Signed-off-by: Johannes Schindelin <johannes.schindelin@xxxxxx> > > --- > > diff --git a/compat/mingw.c b/compat/mingw.c > > @@ -2119,8 +2119,34 @@ int mingw_raise(int sig) > > +#if defined(_MSC_VER) > > + /* > > + * <signal.h> in the CRT defines 8 signals as being > > + * supported on the platform. Anything else causes > > + * an "Invalid signal or error" (which in DEBUG builds > > + * causes the Abort/Retry/Ignore dialog). We by-pass > > + * the CRT for things we already know will fail. > > + */ > > + /*case SIGINT:*/ > > + case SIGILL: > > Why is SIGINT commented out? Whoops. The `case` before that already handles `SIGINT`, I think that's why... I removed it. > And, the comment block seems over-indented. Not really, as the `case` statements are indented one level less than the code (including the comments). But I agree that it looks funny, and moved it within the `case` arm. Thanks! Dscho > > > + case SIGFPE: > > + case SIGSEGV: > > + case SIGTERM: > > + case SIGBREAK: > > + case SIGABRT: > > + case SIGABRT_COMPAT: > > + return raise(sig); > > + default: > > + errno = EINVAL; > > + return -1; >