diff options
author | Eric Wong <e@80x24.org> | 2023-09-04 10:36:03 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2023-09-05 03:01:39 +0000 |
commit | 078ad3d512f5b07ef491adae284350f79f4ae656 (patch) | |
tree | 2d446900fc94310bde32cf5493e1a9fdf386bf10 /script | |
parent | bcd3e39ad12d284acc337707c756f374e036aa1f (diff) | |
download | public-inbox-078ad3d512f5b07ef491adae284350f79f4ae656.tar.gz |
Blindly using the signal set inherited from the parent process is wrong, since the parent (or grandparent) could've blocked all signals. Ensure children can process signals in the event loop when sig handlers have to use standard Perl facilities.
Diffstat (limited to 'script')
-rwxr-xr-x | script/public-inbox-watch | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/script/public-inbox-watch b/script/public-inbox-watch index 2fb27343..75a9a36b 100755 --- a/script/public-inbox-watch +++ b/script/public-inbox-watch @@ -17,7 +17,7 @@ my $do_scan = 1; GetOptions('scan!' => \$do_scan, # undocumented, testing only 'help|h' => \(my $show_help)) or do { print STDERR $help; exit 1 }; if ($show_help) { print $help; exit 0 }; -my $oldset = PublicInbox::DS::block_signals(); +PublicInbox::DS::block_signals(); STDOUT->autoflush(1); STDERR->autoflush(1); local $0 = $0; # local since this script may be eval-ed @@ -55,5 +55,5 @@ if ($watch) { # --no-scan is only intended for testing atm, undocumented. PublicInbox::DS::requeue($scan) if $do_scan; - $watch->watch($sig, $oldset) while ($watch); + $watch->watch($sig) while ($watch); } |