about summary refs log tree commit homepage
path: root/script
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2023-09-08 10:51:14 +0000
committerEric Wong <e@80x24.org>2023-09-08 20:43:17 +0000
commit530db44a85fc48c63b7f97a056f384946753b7ed (patch)
tree8203626dab8fd673b892c1d2688cf9bbea01b5b9 /script
parentfd0f545da088c6802e4601c39d39e6b38fbb8fc4 (diff)
downloadpublic-inbox-530db44a85fc48c63b7f97a056f384946753b7ed.tar.gz
We need to ensure there isn't a window where we lose $SIG{CHLD}
handling.  This is the second part in getting t/imapd.t to pass
the reload-after-setting-imap.pollInterval test

That said, I'm not entirely happy with the way -watch jumps
in and out of the event loop.  It's historical baggage from
the pre-event_loop days.
Diffstat (limited to 'script')
-rwxr-xr-xscript/public-inbox-watch1
1 files changed, 1 insertions, 0 deletions
diff --git a/script/public-inbox-watch b/script/public-inbox-watch
index 75a9a36b..870cd31b 100755
--- a/script/public-inbox-watch
+++ b/script/public-inbox-watch
@@ -52,6 +52,7 @@ if ($watch) {
                 CHLD => \&PublicInbox::DS::enqueue_reap,
         };
         $sig->{QUIT} = $sig->{TERM} = $sig->{INT} = $quit;
+        local @SIG{keys %$sig} = values(%$sig); # for non-signalfd/kqueue
 
         # --no-scan is only intended for testing atm, undocumented.
         PublicInbox::DS::requeue($scan) if $do_scan;