Branch Coverage

blib/lib/Image/ExifTool/DNG.pm
Criterion Covered Total %
branch 38 212 17.9


line true false branch
155 0 0 if $pos + 4 > $end
157 0 0 unless $val
159 0 0 unless $tagInfo
160 0 0 if ($index & 2) { }
168 0 0 if $pos + $hdrLen > $end
172 0 0 if ($et->{'OPTIONS'}{'Binary'} and not $et->{'EXCL_TAG_LOOKUP'}{$lcTag} or $et->{'REQ_TAG_LOOKUP'}{$lcTag}) { }
175 0 0 unless (eval { do { require Compress::Zlib } })
186 0 0 if ($p1 >= $p2 or $p2 > $end)
193 0 0 if $inflate
194 0 0 if ($inflate and $stat == Compress::Zlib::Z_STREAM_END()) { }
203 0 0 if $pos + $hdrLen > $end
205 0 0 if $pos + $len > $end
213 0 0 if defined $err
232 0 3 unless $$dataPt =~ /^Adobe\0/
233 2 1 unless ($outfile)
237 0 2 if $fast and $fast > 1
239 0 3 if $htmlDump
245 0 3 if $pos + $size > $end
247 0 3 if ($htmlDump)
252 0 0 unless ($tag =~ /^(MakN|SR2 )$/)
256 0 3 if ($verbose and not $outfile)
257 0 0 unless $tagInfo
258 0 0 ref $tagInfo eq 'HASH' ? :
269 0 3 if (ref $tagInfo eq 'HASH') { }
270 0 0 unless ($tagInfo->{'SubDirectory'})
271 0 0 if ($outfile) { }
296 1 2 if ($outfile) { }
300 0 1 unless defined $value
307 1 2 if (defined $value and length $value)
309 1 0 unless $$outfile and length $$outfile
311 0 1 if length $value & 1
314 0 3 if $size & 1
316 0 3 unless $pos == $end
339 0 0 if $dirInfo->{'DirLen'} < 4
341 0 0 unless $byteOrder =~ /^(II|MM)$/
344 0 0 if $buildMakerNotes
348 0 0 unless $outfile
349 0 0 if ($outfile)
358 0 0 if $pos + 6 > $end
362 0 0 if $pos + $size > $end
369 0 0 if ($tagInfo)
370 0 0 if $tagInfo->{'Format'}
374 0 0 if (not defined $count and $tag & 16384 and $format and $format ne "string")
378 0 0 if ($format and not $count)
384 0 0 unless $format
387 0 0 if ($outfile) { }
388 0 0 if ($tagInfo)
390 0 0 if ($subdir and $subdir->{'TagTable'}) { }
0 0 elsif ($newTags->{$tagID}) { }
393 0 0 unless $newTagTable
396 0 0 if $subdir->{'Start'}
407 0 0 if (defined $subdir->{'Validate'} and not eval $subdir->{'Validate'}) { }
411 0 0 if (defined $subdir and length $subdir)
412 0 0 if ($subdirStart) { }
422 0 0 if ($et->IsOverwriting($nvHash, $val))
425 0 0 if $verbose > 1
427 0 0 if (defined $newVal and $format)
430 0 0 if (defined $newVal)
452 0 0 if ($buildMakerNotes)
460 0 0 if $tagID == 2053
464 0 0 if ($outfile and !defined($$outfile) || $index != $entries || $et->{'CHANGED'} == $oldChanged)
470 0 0 if ($index != $entries) { }
0 0 elsif ($pos < $end) { }
476 0 0 if ($buildMakerNotes)
503 0 0 if ($outfile and defined $$outfile and length $$outfile)
517 0 0 if $dirInfo->{'OutFile'}
524 0 0 if ($pos + 2 <= $dirEnd and &SetByteOrder(substr($$dataPt, $pos, 2))) { }
539 0 0 if $pos + 4 > $dirEnd
542 0 0 unless $len
543 0 0 unless $readIt
549 0 0 unless $et->ProcessDirectory(\%dirInfo, $tagTablePtr)
553 0 0 if $warn
565 0 0 if $dirInfo->{'OutFile'}
570 0 0 if $len < 6
573 0 0 unless &SetByteOrder(substr($$dataPt, $start, 2))
592 0 0 if ($et->Options("HtmlDump"))
608 0 0 if $dirInfo->{'OutFile'}
613 0 0 if $dirInfo->{'DirLen'} < 4
615 0 0 unless &SetByteOrder($dataOrder)
628 0 0 if $pos + 8 > $end
633 0 0 if ($format < 1 or $format > 13)
635 0 0 if $format
640 0 0 if $pos + 8 + $size > $end
653 0 0 if ($index < $entries)
674 0 3 if $len < 6
677 0 3 unless &SetByteOrder(substr($$dataPt, $start, 2))
679 2 1 unless $outfile
691 0 3 if $len >= 18 and substr($$dataPt, $start + 6, 4) eq "\0\0\0\1"
696 0 3 $dirLen < 48 ? :
698 0 3 unless $tagInfo and $tagInfo->{'SubDirectory'}
718 0 3 unless (defined $loc)
722 0 3 if ($et->Options("HtmlDump"))
724 0 0 if $loc
728 3 0 unless ($subdir->{'Base'})
734 1 2 if ($outfile) { }
740 0 1 unless (defined $buff and $et->{'CHANGED'} != $oldChanged)
745 0 1 unless (length $buff)
750 0 1 if ($subdirInfo{'Relative'}) { }
759 0 1 if $subdirInfo{'BlockWrite'}
770 0 2 if ($et->Options("MakerNotes") or $et->{'REQ_TAG_LOOKUP'}{lc $tagInfo->{'Name'}})
774 0 0 if ($tagInfo->{'MakerNotes'}) { }
781 0 0 if (not defined $val and $dirLen > 4)
786 0 0 unless $tagInfo->{'Writable'}
788 0 0 unless defined $val
802 9 2 unless $et
806 0 2 unless &$proc($et, $dirInfo, $tagTablePtr)