From 5a5b285567528d52860cfd971ff808c75158155e Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 11 Jan 2015 23:55:27 +0000 Subject: import_slrnspool: graceful exit for interruptibility This should alleviate fears of interrupting the process. --- scripts/import_slrnspool | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scripts/import_slrnspool b/scripts/import_slrnspool index 1f25eff2..d95836d6 100755 --- a/scripts/import_slrnspool +++ b/scripts/import_slrnspool @@ -14,6 +14,10 @@ use PublicInbox::Config; use Email::Filter; use Email::LocalDelivery; sub usage { "Usage:\n".join('',grep(/\t/, `head -n 10 $0`)) } +my $exit = 0; +my $sighandler = sub { $exit = 1 }; +$SIG{INT} = $sighandler; +$SIG{TERM} = $sighandler; my $spool = shift @ARGV or die usage(); my $recipient = $ENV{ORIGINAL_RECIPIENT}; defined $recipient or die usage(); @@ -45,7 +49,7 @@ my $ok; my $max_gap = 10000; my $max = $n + $max_gap; -for (; $n < $max; $n++) { +for (; $exit == 0 && $n < $max; $n++) { my $fn = "$spool/$n"; print STDERR $fn, "\n"; open(my $fh, '<', $fn) or next; -- cgit v1.2.3-24-ge0c7