| line |
true |
false |
branch |
|
68
|
200 |
184 |
if ref $_[1] eq 'CODE' |
|
|
2 |
27 |
if ref $_[1] eq 'CODE' |
|
74
|
0 |
2 |
unless $self->read_stream |
|
|
1 |
28 |
unless $self->read_stream |
|
80
|
0 |
1 |
unless $$ == $me |
|
|
3 |
26 |
unless $$ == $me |
|
81
|
0 |
1 |
unless defined $self->_status |
|
|
8 |
20 |
unless defined $self->_status |
|
102
|
3 |
0 |
if $self->verbose |
|
|
0 |
0 |
if $self->verbose |
|
108
|
0 |
16 |
unless $self |
|
|
0 |
0 |
unless $self |
|
110
|
16 |
0 |
unless defined $self->_status |
|
|
0 |
0 |
unless defined $self->_status |
|
128
|
13 |
19 |
$self->separate_err ? : |
|
130
|
6 |
26 |
unless defined $pid |
|
136
|
2 |
24 |
unless $self->set_pipes |
|
140
|
12 |
12 |
$self->separate_err ? : |
|
147
|
7 |
426 |
if $_[0]->pidfile |
|
156
|
2 |
57 |
unless defined $self->_status |
|
157
|
1 |
9 |
if $self->execute |
|
158
|
3 |
6 |
if $self->code |
|
167
|
1 |
236 |
unless $self |
|
174
|
236 |
0 |
unless defined $self->_status |
|
178
|
183 |
53 |
if ($self->_internal_return) |
|
179
|
0 |
183 |
$self->_internal_return->isa('IO::Pipe::End') ? : |
|
183
|
0 |
183 |
unless 'IO::Select'->new($return_reader)->can_read(10) |
|
189
|
152 |
30 |
$rt ? : |
|
|
1 |
182 |
$self->serialize ? : |
|
193
|
184 |
52 |
if ($self->_internal_err) |
|
194
|
1 |
183 |
$self->_internal_err->isa('IO::Pipe::End') ? : |
|
198
|
1 |
183 |
unless 'IO::Select'->new($internal_err_reader)->can_read(10) |
|
203
|
60 |
123 |
if @result_error |
|
216
|
3 |
218 |
unless ref $code eq 'CODE' |
|
224
|
168 |
50 |
if ($self->set_pipes) |
|
225
|
2 |
166 |
unless $input_pipe = 'IO::Pipe'->new |
|
227
|
2 |
166 |
unless $output_pipe = 'IO::Pipe'->new |
|
229
|
2 |
166 |
unless $output_err_pipe = 'IO::Pipe'->new |
|
231
|
168 |
0 |
if ($self->channels) |
|
232
|
2 |
166 |
unless $channel_in = 'IO::Pipe'->new |
|
234
|
2 |
166 |
unless $channel_out = 'IO::Pipe'->new |
|
238
|
214 |
4 |
if ($self->internal_pipes) |
|
239
|
2 |
212 |
unless my $internal_err = 'IO::Pipe'->new |
|
241
|
2 |
212 |
unless my $internal_return = 'IO::Pipe'->new |
|
256
|
0 |
218 |
unless defined $pid |
|
258
|
20 |
198 |
if ($pid == 0) |
|
265
|
20 |
0 |
if ($self->internal_pipes) |
|
266
|
19 |
1 |
if ($self->_internal_err) |
|
267
|
0 |
19 |
$self->_internal_err->isa('IO::Pipe::End') ? : |
|
274
|
19 |
1 |
if ($self->_internal_return) { } |
|
275
|
0 |
19 |
$self->_internal_return->isa('IO::Pipe::End') ? : |
|
287
|
19 |
1 |
if ($self->set_pipes) |
|
292
|
18 |
1 |
if $output_pipe |
|
293
|
17 |
1 |
$output_err_pipe ? : |
|
|
1 |
18 |
!$self->separate_err ? : |
|
297
|
18 |
1 |
if $input_pipe |
|
298
|
0 |
18 |
unless open STDERR, '>&', $stderr or not !$internal_err->write($!) |
|
301
|
0 |
18 |
unless open STDOUT, '>&', $stdout or not !$internal_err->write($!) |
|
304
|
0 |
18 |
unless open STDIN, '>&', $stdin or not !$internal_err->write($!) |
|
311
|
18 |
0 |
if ($self->channels) |
|
313
|
18 |
0 |
if $channel_in |
|
314
|
18 |
0 |
if $channel_out |
|
327
|
0 |
0 |
if ($internal_err) |
|
328
|
0 |
0 |
if $@ |
|
329
|
0 |
0 |
if not $@ and $! |
|
331
|
0 |
0 |
if not $self->serialize and ref $rt eq 'ARRAY' and scalar @$rt == 1 |
|
333
|
0 |
0 |
if $self->serialize and $return |
|
335
|
0 |
0 |
if $return |
|
342
|
49 |
149 |
unless $self->set_pipes |
|
344
|
148 |
1 |
if $output_pipe |
|
345
|
138 |
1 |
$output_err_pipe ? : |
|
|
10 |
139 |
!$self->separate_err ? : |
|
348
|
148 |
1 |
if $input_pipe |
|
350
|
149 |
0 |
if ($self->set_pipes) |
|
351
|
149 |
0 |
if ($self->channels) |
|
352
|
148 |
1 |
if $channel_in |
|
353
|
148 |
1 |
if $channel_out |
|
387
|
9 |
3 |
!!@{(shift())->error;} ? : |
|
390
|
0 |
0 |
$st & 128 ? : |
|
393
|
31 |
0 |
defined $_[0]->_status ? : |
|
|
0 |
31 |
defined $_[0]->_status && $_[0]->quirkiness ? : |
|
399
|
5 |
10 |
$_[0]->is_running ? : |
|
401
|
819 |
217 |
$_[0]->process_id ? : |
|
405
|
271 |
260 |
if $pidfile |
|
406
|
2 |
239 |
unless $self->pid |
|
407
|
233 |
6 |
unless $self->pidfile |
|
416
|
0 |
18 |
unless $stream |
|
421
|
7 |
67 |
unless 'IO::Select'->new($_[0])->can_read(10) |
|
426
|
1 |
6 |
unless 'IO::Select'->new($_[0])->can_read(10) |
|
427
|
2 |
4 |
wantarray ? : |
|
452
|
1 |
1 |
unless $_[0]->separate_err |
|
458
|
0 |
14 |
unless $_[0]->separate_err |
|
464
|
0 |
256 |
if $self->is_running |
|
465
|
3 |
218 |
if not $self->execute and not $self->code |
|
470
|
207 |
46 |
ref $self->args eq 'ARRAY' ? : |
|
|
253 |
0 |
$self->args ? : |
|
474
|
45 |
208 |
if $self->subreaper |
|
477
|
218 |
35 |
if ($self->code) { } |
|
|
35 |
0 |
elsif ($self->execute) { } |
|
495
|
28 |
214 |
unless $self->kill_whole_group or $self->is_running |
|
505
|
3 |
222 |
unless defined $pid |
|
506
|
172 |
50 |
unless $self->is_running |
|
515
|
2 |
49 |
if $self->kill_whole_group |
|
526
|
222 |
5 |
if ($send_signal) |
|
531
|
28 |
199 |
if $ret == $pid or $ret == -1 |
|
533
|
227 |
0 |
if ($sleep_time) |
|
538
|
28 |
22 |
if defined $self->_status |
|
540
|
22 |
0 |
if $self->kill_sleeptime |
|
542
|
16 |
6 |
if ($self->blocking_stop) { } |
|
549
|
15 |
1 |
if $ret == $pid or $ret == -1 |
|
561
|
0 |
190 |
unless $self->pid |
|
569
|
55 |
135 |
if $wait and not defined $self->_status |
|
571
|
55 |
135 |
unless defined $self->_status |
|
573
|
70 |
121 |
if $self->error and $self->error->size > 0 |