line |
true |
false |
branch |
96
|
2027 |
3 |
$opts ? :
|
99
|
2005 |
25 |
if (defined $subroutine)
|
154
|
0 |
2030 |
if (defined $secs and $secs < 0)
|
159
|
2013 |
17 |
if (defined $deadline)
|
161
|
2011 |
2 |
if not defined $secs or $dt < $secs
|
170
|
2026 |
4 |
if (defined $secs)
|
174
|
113 |
1913 |
if (not @expiration) { }
|
|
0 |
1913 |
elsif (not defined $expiration[0]) { }
|
186
|
2 |
1911 |
$oldalarm2 < 1 ? :
|
197
|
4 |
2026 |
if (not defined $secs) { }
|
|
0 |
2026 |
elsif ($secs <= 0) { }
|
|
1 |
2025 |
elsif ($oldalarm and $oldalarm < $secs) { }
|
215
|
2011 |
14 |
if $secs > int $isecs
|
232
|
2012 |
2 |
if $alarm_tinkered_with
|
235
|
16 |
2014 |
unless (eval {
do {
local $SIG{'__DIE__'};
if (not defined $secs) {
$ret = &$sub;
}
elsif ($secs <= 0) {
$self->{'timed_out'} = 1;
&$handler;
}
elsif ($oldalarm and $oldalarm < $secs) {
$expiration[0] = $start_time + $oldalarm;
alarm $oldalarm;
$alarm_tinkered_with = 1;
$ret = &$sub;
}
else {
local $SIG{'ALRM'} = $handler;
my $isecs = int $secs;
++$isecs if $secs > int $isecs;
$expiration[0] = $start_time + $isecs;
alarm $isecs;
$alarm_tinkered_with = 1;
$ret = &$sub;
};
alarm 0 if $alarm_tinkered_with;
1
}
})
|
236
|
16 |
0 |
$@ ne '' ? :
|
238
|
14 |
2 |
if $alarm_tinkered_with
|
249
|
1 |
2029 |
$and_catch ? :
|
251
|
12 |
2018 |
if (defined $eval_stat and $eval_stat =~ /__alarm__ignore__\Q($id)\E/) { }
|
|
0 |
2018 |
elsif ($timedout) { }
|
263
|
13 |
2017 |
if $self->{'timed_out'}
|
267
|
1913 |
117 |
if ($oldalarm)
|
269
|
1910 |
3 |
if ($remaining_time > 0)
|
273
|
1910 |
0 |
if $remaining_time > int $remaining_time
|
279
|
3 |
2026 |
if (not $and_catch and defined $eval_stat and not $eval_stat =~ /__alarm__ignore__\Q($id)\E/)
|
284
|
2 |
2025 |
if (defined $remaining_time)
|
323
|
0 |
3 |
unless defined $self->{'end_time'}
|
326
|
2 |
1 |
if ($secs > 0) { }
|
328
|
2 |
0 |
if $secs > int $isecs
|