| line |
true |
false |
branch |
|
30
|
0 |
68 |
if ($INC{'Sys/HostAddr.pm'}) |
|
32
|
0 |
21 |
if $host2 |
|
36
|
0 |
68 |
unless socket my $socket, 2, 1, getprotobyname 'tcp' |
|
38
|
0 |
68 |
unless setsockopt $socket, 1, 2, "\cA\000\000\000" |
|
41
|
0 |
68 |
unless bind $socket, $sockaddr |
|
42
|
0 |
68 |
unless listen $socket, 128 |
|
59
|
0 |
68 |
$threads_avail ? : |
|
67
|
0 |
68 |
if ($threads_avail) |
|
71
|
0 |
0 |
if ($@ =~ /CODE|GLOB/) |
|
91
|
0 |
113 |
if ($ref eq 'threadsx::shared::code') { } |
|
|
0 |
113 |
elsif ($ref eq 'threadsx::shared::glob') { } |
|
101
|
21 |
92 |
if (overload::Overloaded($o)) |
|
102
|
21 |
0 |
if ($ref ne 'CODE' and $ref ne 'CODE*' and $ref ne 'GLOB') |
|
116
|
0 |
21 |
if $@ |
|
117
|
21 |
0 |
if (@SERVERS == 1) |
|
131
|
0 |
68 |
if ($meta->{'style'} eq 'threaded') { } |
|
138
|
0 |
0 |
if ($self->{'meta'}{'pid_file'}) |
|
154
|
0 |
68 |
unless (defined $pid) |
|
157
|
47 |
21 |
if ($pid == 0) |
|
158
|
0 |
47 |
if ($self->{'meta'}{'pid_file'}) |
|
176
|
0 |
25 |
unless overload::Overloaded($obj) |
|
177
|
9 |
16 |
unless (@oplist) |
|
187
|
12 |
0 |
if ($ops{'0+'} or $ops{'""'} or $ops{'bool'}) |
|
193
|
193 |
207 |
if $ops{$binop} |
|
197
|
13 |
12 |
if $ops{'<=>'} |
|
198
|
13 |
12 |
if $ops{'cmp'} |
|
200
|
13 |
12 |
if $ops{'-'} |
|
201
|
13 |
12 |
if $ops{'-='} |
|
202
|
13 |
0 |
if $ops{'<'} and $ops{'neg'} |
|
203
|
13 |
12 |
if $ops{'+='} |
|
206
|
0 |
25 |
if $ops{'nomethod'} |
|
231
|
0 |
2 |
unless ($file) |
|
235
|
0 |
2 |
unless (open $fh, '>', $file) |
|
251
|
0 |
3 |
if (not defined $file || ref $self and $self ne 'Patro::Config') |
|
255
|
0 |
3 |
if (ref $file eq 'GLOB') { } |
|
|
0 |
3 |
elsif (not open($fh, '<', $file)) { } |
|
284
|
30 |
67 |
unless ($paddr) |
|
285
|
30 |
0 |
if $!{'EINTR'} |
|
286
|
0 |
0 |
if $!{'ECHILD'} or $! == 10 |
|
299
|
67 |
0 |
if ($self->{'meta'}{'style'} eq 'forked') { } |
|
301
|
0 |
67 |
unless (defined $pid) |
|
304
|
41 |
26 |
if ($pid != 0) |
|
305
|
0 |
41 |
if ($self->{'meta'}{'pid_file'}) |
|
324
|
0 |
0 |
if ($self->{'meta'}{'pid_file'}) |
|
350
|
0 |
72 |
if ($self->{'meta'}{'subthreads'}) |
|
355
|
0 |
0 |
if (@joinable) |
|
360
|
0 |
0 |
unless (defined $i) |
|
371
|
21 |
51 |
unless ($self->still_active) |
|
382
|
0 |
72 |
if (time <= $meta->{'keep_alive'}) |
|
385
|
42 |
30 |
if (time < $meta->{'last_connection'} + $meta->{'idle_timeout'}) |
|
388
|
9 |
21 |
if (keys %{$$meta{'pids'};}) |
|
403
|
0 |
568 |
unless $req =~ /\S/ |
|
410
|
21 |
547 |
if $Patro::Archy::disconnect |
|
422
|
0 |
568 |
if &CORE::GLOBAL::ref($request) |
|
426
|
0 |
568 |
unless (defined $topic) |
|
432
|
363 |
205 |
if ($request->{'has_args'}) |
|
435
|
5 |
496 |
if (ref $_ eq '.Patroon') { } |
|
440
|
0 |
363 |
if ($@) |
|
447
|
363 |
205 |
$has_args ? : |
|
448
|
363 |
205 |
$has_args ? : |
|
457
|
67 |
501 |
if ($topic eq 'META') { } |
|
|
70 |
431 |
elsif ($topic eq 'HASH') { } |
|
|
249 |
182 |
elsif ($topic eq 'ARRAY') { } |
|
|
20 |
162 |
elsif ($topic eq 'SCALAR') { } |
|
|
32 |
130 |
elsif ($topic eq 'METHOD') { } |
|
|
3 |
127 |
elsif ($topic eq 'CODE') { } |
|
|
85 |
42 |
elsif ($topic eq 'HANDLE') { } |
|
|
36 |
6 |
elsif ($topic eq 'OVERLOAD') { } |
|
|
6 |
0 |
elsif ($topic eq 'REF') { } |
|
480
|
67 |
501 |
if (@r and ref $r[0] eq '.Patroclus') |
|
485
|
15 |
486 |
if $! |
|
486
|
15 |
486 |
if $^E |
|
487
|
1 |
500 |
if $? |
|
488
|
2 |
499 |
if $@ |
|
506
|
607 |
431 |
if $orig_refs[$i] != \$args->[$j] |
|
507
|
14 |
417 |
if ($orig_dump[$i] ne $dj) |
|
514
|
12 |
489 |
if @out |
|
515
|
0 |
501 |
if @outref |
|
516
|
15 |
486 |
if ($ctx >= 2) { } |
|
|
448 |
38 |
elsif ($ctx == 1 and defined $r[0]) { } |
|
529
|
5 |
62 |
if ($cmd eq 'disconnect') |
|
534
|
0 |
62 |
if ($cmd eq 'ref') { } |
|
|
0 |
62 |
elsif ($cmd eq 'reftype') { } |
|
|
62 |
0 |
elsif ($cmd eq 'destroy') { } |
|
541
|
16 |
46 |
if (@ids == 0) { } |
|
557
|
0 |
70 |
if (&reftype($obj) ne 'HASH') |
|
562
|
7 |
63 |
if ($cmd eq 'STORE') { } |
|
|
53 |
10 |
elsif ($cmd eq 'FETCH') { } |
|
|
2 |
8 |
elsif ($cmd eq 'DELETE') { } |
|
|
8 |
0 |
elsif ($cmd eq 'EXISTS') { } |
|
|
0 |
0 |
elsif ($cmd eq 'CLEAR') { } |
|
|
0 |
0 |
elsif ($cmd eq 'FIRSTKEY') { } |
|
|
0 |
0 |
elsif ($cmd eq 'NEXTKEY') { } |
|
|
0 |
0 |
elsif ($cmd eq 'SCALAR') { } |
|
594
|
0 |
249 |
if (&reftype($obj) ne 'ARRAY') |
|
598
|
7 |
242 |
if ($cmd eq 'STORE') { } |
|
|
180 |
62 |
elsif ($cmd eq 'FETCH') { } |
|
|
32 |
30 |
elsif ($cmd eq 'FETCHSIZE') { } |
|
|
0 |
30 |
elsif ($cmd eq 'STORESIZE' or $cmd eq 'EXTEND') { } |
|
|
16 |
14 |
elsif ($cmd eq 'SPLICE') { } |
|
|
6 |
8 |
elsif ($cmd eq 'PUSH') { } |
|
|
2 |
6 |
elsif ($cmd eq 'UNSHIFT') { } |
|
|
3 |
3 |
elsif ($cmd eq 'POP') { } |
|
|
3 |
0 |
elsif ($cmd eq 'SHIFT') { } |
|
|
0 |
0 |
elsif ($cmd eq 'EXISTS') { } |
|
613
|
3 |
13 |
if ($off < 0) |
|
615
|
0 |
3 |
if ($off < 0) |
|
621
|
2 |
14 |
if (not defined $len or $len eq 'undef') |
|
624
|
2 |
14 |
if ($len < 0) |
|
626
|
0 |
2 |
if ($len < 0) |
|
633
|
6 |
10 |
if ($ctx == 1) { } |
|
634
|
6 |
0 |
@val > 0 ? : |
|
657
|
0 |
20 |
if (&reftype($obj) ne 'SCALAR') |
|
661
|
6 |
14 |
if ($cmd eq 'STORE') { } |
|
|
14 |
0 |
elsif ($cmd eq 'FETCH') { } |
|
676
|
0 |
32 |
unless ($obj) |
|
681
|
1 |
31 |
if ($command =~ /::/) { } |
|
|
30 |
1 |
elsif ($context < 2) { } |
|
683
|
1 |
0 |
if ($context < 2) { } |
|
684
|
1 |
0 |
$has_args ? : |
|
687
|
0 |
0 |
$has_args ? : |
|
691
|
22 |
8 |
$has_args ? : |
|
694
|
0 |
1 |
$has_args ? : |
|
703
|
0 |
85 |
ref $obj eq 'threadsx::shared::glob' ? : |
|
704
|
7 |
78 |
if ($command eq 'PRINT') { } |
|
|
1 |
77 |
elsif ($command eq 'PRINTF') { } |
|
|
0 |
77 |
elsif ($command eq 'WRITE') { } |
|
|
13 |
64 |
elsif ($command eq 'READLINE') { } |
|
|
5 |
59 |
elsif ($command eq 'GETC') { } |
|
|
3 |
56 |
elsif ($command eq 'READ' or $command eq 'READ?' or $command eq 'SYSREAD') { } |
|
|
2 |
54 |
elsif ($command eq 'EOF') { } |
|
|
1 |
53 |
elsif ($command eq 'FILENO') { } |
|
|
2 |
51 |
elsif ($command eq 'SEEK') { } |
|
|
8 |
43 |
elsif ($command eq 'TELL') { } |
|
|
3 |
40 |
elsif ($command eq 'BINMODE') { } |
|
|
8 |
32 |
elsif ($command eq 'CLOSE') { } |
|
|
5 |
27 |
elsif ($command eq 'OPEN') { } |
|
|
1 |
26 |
elsif ($command eq 'TRUNCATE') { } |
|
|
0 |
26 |
elsif ($command eq 'FCNTL') { } |
|
|
4 |
22 |
elsif ($command eq 'FLOCK') { } |
|
|
2 |
20 |
elsif ($command eq 'STAT') { } |
|
|
0 |
20 |
elsif ($command eq 'LSTAT') { } |
|
|
6 |
14 |
elsif ($command eq '-X') { } |
|
|
3 |
11 |
elsif ($command eq 'SYSOPEN') { } |
|
|
1 |
10 |
elsif ($command eq 'OPENDIR') { } |
|
|
1 |
9 |
elsif ($command eq 'REWINDDIR') { } |
|
|
3 |
6 |
elsif ($command eq 'TELLDIR') { } |
|
|
3 |
3 |
elsif ($command eq 'READDIR') { } |
|
|
1 |
2 |
elsif ($command eq 'SEEKDIR') { } |
|
|
1 |
1 |
elsif ($command eq 'CLOSEDIR') { } |
|
|
1 |
0 |
elsif ($command eq 'CHDIR') { } |
|
708
|
1 |
0 |
if ($has_args) { } |
|
718
|
0 |
0 |
if (@$args < 2) |
|
725
|
2 |
11 |
if ($context > 1) { } |
|
738
|
0 |
3 |
if (@$args < 2) |
|
745
|
1 |
2 |
if ($command eq 'SYSREAD' or $command eq 'READ?' and fileno $fh >= 0) { } |
|
760
|
0 |
2 |
if (@$args < 2) { } |
|
|
0 |
2 |
elsif (@$args > 2) { } |
|
775
|
2 |
1 |
if (@$args) { } |
|
782
|
0 |
8 |
if ($Patro::SECURE) |
|
789
|
0 |
5 |
if ($Patro::SECURE) |
|
795
|
1 |
4 |
if (@$args == 0) { } |
|
799
|
3 |
1 |
if (@$args == 0) { } |
|
808
|
5 |
0 |
if ($z) |
|
826
|
1 |
1 |
if ($context < 2) { } |
|
832
|
0 |
0 |
if ($context < 2) { } |
|
841
|
0 |
3 |
if ($Patro::SECURE) |
|
845
|
0 |
3 |
@$args <= 2 ? : |
|
851
|
0 |
1 |
if ($Patro::SECURE) |
|
861
|
2 |
1 |
if ($context < 2) { } |
|
883
|
0 |
3 |
if (ref $sub eq 'threadsx::shared::code') |
|
886
|
3 |
0 |
if ($context < 2) { } |
|
887
|
2 |
1 |
$has_args ? : |
|
889
|
0 |
0 |
$has_args ? : |
|
895
|
11 |
25 |
if ($op eq '@{}') { } |
|
|
10 |
15 |
elsif ($op eq '%{}') { } |
|
|
0 |
15 |
elsif ($op eq '&{}') { } |
|
|
2 |
13 |
elsif ($op eq '${}') { } |
|
913
|
0 |
13 |
if ($swap) |
|
918
|
0 |
13 |
if ($op =~ /[&|~^][.]=?/) |
|
921
|
0 |
13 |
if ($op eq '-X') { } |
|
|
0 |
13 |
elsif ($op eq 'neg') { } |
|
|
0 |
13 |
elsif ($op eq '!' or $op eq '~' or $op eq '++' or $op eq '--') { } |
|
|
0 |
13 |
elsif ($op eq 'qr') { } |
|
|
0 |
13 |
elsif ($op eq 'atan2') { } |
|
|
0 |
13 |
elsif ($op eq 'cos' or $op eq 'sin' or $op eq 'exp' or $op eq 'abs' or $op eq 'int' or $op eq 'sqrt' or $op eq 'log') { } |
|
|
4 |
9 |
elsif ($op eq 'bool') { } |
|
|
0 |
9 |
elsif ($op eq '0+') { } |
|
|
2 |
7 |
elsif ($op eq '""') { } |
|
|
0 |
7 |
elsif ($op eq '<>') { } |
|
935
|
4 |
0 |
$x ? : |
|
946
|
0 |
13 |
if ($@) |
|
949
|
0 |
13 |
if ($threads_avail) |
|
958
|
0 |
6 |
if (&reftype($obj) ne 'REF') |
|
962
|
6 |
0 |
if ($command eq 'deref') |
|
973
|
38 |
0 |
if (@_ > 0 and ref $_[-1] eq '.Patroclus') |
|
1006
|
463 |
105 |
if ($resp->{'context'}) |
|
1007
|
448 |
15 |
if ($resp->{'context'} == 1) { } |
|
|
15 |
0 |
elsif ($resp->{'context'} == 2) { } |
|
1015
|
12 |
556 |
if ($resp->{'out'}) |
|
1029
|
545 |
0 |
defined $obj ? : |
|
1030
|
463 |
82 |
unless &CORE::GLOBAL::ref($obj) |
|
1032
|
0 |
82 |
if ($threads_avail) |
|
1033
|
0 |
0 |
if (ref $obj eq 'CODE') { } |
|
|
0 |
0 |
elsif (ref $obj eq 'GLOB') { } |
|
1047
|
40 |
42 |
if (not $self->{'obj'}{$id}) { } |
|
1051
|
0 |
40 |
if ($ref eq 'threadsx::shared::code') { } |
|
|
0 |
40 |
elsif ($ref eq 'threadsx::shared::glob') { } |
|
1064
|
4 |
36 |
if (overload::Overloaded($obj)) |
|
1075
|
0 |
68 |
if ($INC{'perl5db.pl'}) |
|
1086
|
0 |
68 |
if ($threads_avail) |