On 10/07/2025 22:26, Junio C Hamano wrote:
Thanks, will queue with the following typo-fixes.
I'd appreciate an explicit Ack, even if this version is acceptable
for all those who have helped polish this topic.
Patch 2 looks good, using sigaction() rather than signal() should reduce
the variation in behavior across our unix platforms. I'd be much happier
if we set errno on SIGCHLD in patch 1 - the argument in [1] that a
non-zero errno might break something because signal() did not set it
does not make much sense to me. At the moment it does not matter because
there are no callers that check the return value let alone errno but if
a future caller does start checking for errors there going to be
surprised by errno not getting set.
Thanks
Phillip
[1] <3hrbpiapamvfiuilebjcbcruppz3vukf6mndg62j6gvko2jfs4@ll24s25shcgv>
I understand that the self-pipe to wake ourselves up is left outside
this topic on purpose, which I agree with.
Thanks, Carlo, for putting this together from weeks' long
discussions, and thanks Phillip for pushing for simpler and smaller
set of changes.
Will queue.
1: 30773a76ce ! 1: ef03aa432a compat/mingw: allow sigaction(SIGCHLD)
@@ Commit message
The current code uses signal(), which returns SIG_ERR (but doesn't
seem to set errno) so instruct sigaction() to do the same.
- A new SA flag will be needed, so copy the one from Cygwinr; note that
- the sigacgtion() implementation that is provided won't use it, so
+ A new SA flag will be needed, so copy the one from Cygwin; note that
+ the sigaction() implementation that is provided won't use it, so
its value is otherwise irrelevant.
Signed-off-by: Carlo Marcelo Arenas Belón <carenas@xxxxxxxxx>
2: 7a33d7a646 = 2: d83e1eef3b daemon: use sigaction() to install child_handler()