git.shiar.nl
/
barcat.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
115a88b
)
exit on SIGINT
author
Mischa POSLAWSKY
<perl@shiar.org>
Thu, 12 Sep 2019 20:58:31 +0000
(22:58 +0200)
committer
Mischa POSLAWSKY
<perl@shiar.org>
Thu, 12 Sep 2019 15:48:11 +0000
(17:48 +0200)
barcat
patch
|
blob
|
history
diff --git
a/barcat
b/barcat
index d7361a11f9655ab589bbd659bf1c1d72a7c42c0f..9e4d0ae0feaf3de2ba64284b3f014f108b38a35b 100755
(executable)
--- a/
barcat
+++ b/
barcat
@@
-94,6
+94,7
@@
$SIG{ALRM} = sub {
show_lines();
alarm $opt{interval} if defined $opt{interval} and $opt{interval} > 0;
};
show_lines();
alarm $opt{interval} if defined $opt{interval} and $opt{interval} > 0;
};
+$SIG{INT} = \&show_exit;
if (defined $opt{interval}) {
$opt{interval} ||= 1;
if (defined $opt{interval}) {
$opt{interval} ||= 1;
@@
-105,12
+106,6
@@
if (defined $opt{interval}) {
} or warn $@, "Expect slowdown with large datasets!\n";
}
} or warn $@, "Expect slowdown with large datasets!\n";
}
-$SIG{INT} = sub {
- $SIG{INT} = 'DEFAULT'; # reset for subsequent attempts
- exit if !$.;
- 'IGNORE' # continue after assumed eof
-};
-
my $valmatch = qr/$opt{anchor} ( \h* -? [0-9]* \.? [0-9]+ (?: e[+-]?[0-9]+ )? |)/x;
while (readline) {
s/\r?\n\z//;
my $valmatch = qr/$opt{anchor} ( \h* -? [0-9]* \.? [0-9]+ (?: e[+-]?[0-9]+ )? |)/x;
while (readline) {
s/\r?\n\z//;
@@
-221,7
+216,6
@@
continue {
say '' if $opt{spark};
}
say '' if $opt{spark};
}
-show_lines();
sub show_stat {
if ($opt{hidemin} or $opt{hidemax}) {
sub show_stat {
if ($opt{hidemin} or $opt{hidemax}) {
@@
-241,7
+235,15
@@
sub show_stat {
}
say '';
}
}
say '';
}
-show_stat() if $opt{stat};
+
+sub show_exit {
+ show_lines();
+ show_stat() if $opt{stat};
+ exit 130 if @_; # 0x80+signo
+ exit;
+}
+
+show_exit();
__END__
=encoding utf8
__END__
=encoding utf8