From: Eric Wong Date: Mon, 29 Jun 2020 10:34:19 +0000 (+0000) Subject: watch: ensure SIGCHLD works in forked children X-Git-Tag: v1.6.0~314 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=38c87c5d556e218abe59d874f0ad7968d17a79b8;p=public-inbox.git watch: ensure SIGCHLD works in forked children In case our git or spam checker subprocesses spawn subprocesses of their own. We'll also ensure signal handlers are properly setup before unblocking them. --- diff --git a/lib/PublicInbox/WatchMaildir.pm b/lib/PublicInbox/WatchMaildir.pm index 25b87e93..288f64d1 100644 --- a/lib/PublicInbox/WatchMaildir.pm +++ b/lib/PublicInbox/WatchMaildir.pm @@ -527,8 +527,8 @@ sub watch_atfork_child ($) { delete $self->{poll_pids}; delete $self->{opendirs}; PublicInbox::DS->Reset; + %SIG = (%SIG, %{$self->{sig}}, CHLD => 'DEFAULT'); PublicInbox::Sigfd::sig_setmask($self->{oldset}); - %SIG = (%SIG, %{$self->{sig}}); } sub watch_atfork_parent ($) {