Jeff King <p...@peff.net> writes: > On Thu, Jun 06, 2013 at 01:41:05AM -0500, Felipe Contreras wrote: > >> > Thanks. I wasn't quite clear on how the signal handling worked on >> > Windows, but from your description, I agree there is not any point in >> > running the test at all. >> >> Shouldn't we clarify that Git exit codes only work on UNIX-like >> operating systems? > > Clarify where? My impression is that this issue is well-known in the > msys world, and it is a platform issue, not a git issue.
I actually was scratching my head while reading "the implementation of raise() just calls exit(3)." part, in this: > The particular deficiency is that when a signal is raise()d whose SIG_DFL > action will cause process death (SIGTERM in this case), the > implementation of raise() just calls exit(3). After a bit of web searching, it seems to me that this behaviour of raise() is in msvcrt, and compat/mingw.c::mingw_raise() just calls that. In other words, "the implementation of raise()" is at an even lower level than mingw/msys, and I would agree that it is a platform issue. > If somebody wants to write a note somewhere in the git > documentation, that's fine with me, but I'm not clear on exactly > what it would even say. I agree with both points. I can suggest to clarify the log message a bit with "the implementation of raise() in msvcrt (Microsoft C Runtime library) just calls exit(3)", but that does not address the end-user documentation issue. I tried to summarize the issue for end-user documentation and came up with this: The Git implementation on MinGW exits with status code 3 upon receiving an uncaught process-terminating signal, just like any program that link with msvcrt (Microsoft C Runtime library) whose raise() implementation just calls exit(3). This is different from Git on POSIX, which reports a death by receiving a signal with the exit status code (128 + signal number). But when stated this way, it feels that it belongs to Msysgit documentation, not ours, at least to me. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html