line |
true |
false |
branch |
21
|
5 |
13 |
if defined $boundary_quoted |
22
|
5 |
13 |
defined $boundary_quoted ? : |
29
|
8 |
17 |
unless $input_is_scalar |
37
|
17 |
8 |
if ($input_is_scalar) { } |
41
|
8 |
0 |
$remaining < $buffer_size ? : |
42
|
0 |
8 |
unless my $read = read($input, $buffer, $chunk, length $buffer) |
46
|
25 |
0 |
unless ($state{'parsing_headers'} or $state{'parsing_body'}) |
49
|
22 |
3 |
if ($next_pos >= 0 and $end_pos < 0 || $end_pos > $next_pos) { } |
|
1 |
2 |
elsif ($end_pos >= 0) { } |
62
|
118 |
116 |
if ($state{'parsing_headers'}) { } |
64
|
116 |
179 |
if ($pos == 0) |
73
|
2 |
177 |
unless defined $value |
77
|
115 |
62 |
if (lc $name eq 'content-disposition') |
80
|
0 |
160 |
unless lc $field_name eq 'name' or lc $field_name eq 'filename' |
81
|
143 |
17 |
if defined $field_quoted |
82
|
143 |
17 |
defined $field_quoted ? : |
86
|
0 |
116 |
if $state{'parsing_headers'} |
91
|
97 |
19 |
if ($next_pos >= 0 and $end_pos < 0 || $end_pos > $next_pos) { } |
|
19 |
0 |
elsif ($end_pos >= 0) { } |
|
0 |
0 |
elsif (length $buffer > length($next_boundary) + 2) { } |
92
|
84 |
13 |
if (not $state{'parsed_optional_crlf'} and $next_pos >= 2) |
102
|
19 |
0 |
if (not $state{'parsed_optional_crlf'} and $end_pos >= 2) |
111
|
0 |
0 |
unless ($state{'parsed_optional_crlf'}) |
119
|
103 |
13 |
unless (defined $current->{'filename'} and $options->{'discard_files'}) |
120
|
41 |
62 |
if ($options->{'parse_as_files'} or defined $current->{'filename'} and not defined $options->{'parse_as_files'}) { } |
122
|
12 |
29 |
if (defined $options->{'on_file_buffer'}) { } |
126
|
29 |
0 |
unless (defined $current->{'file'}) |
128
|
28 |
1 |
unless $options->{'tempfile_args'} |
132
|
29 |
0 |
if ($is_eof) |
138
|
62 |
0 |
unless defined $current->{'content'} |
143
|
19 |
97 |
if $state{'done'} |
144
|
0 |
97 |
if $state{'parsing_body'} |
151
|
3 |
20 |
unless $state{'done'} |