Branch Coverage

blib/lib/Image/ExifTool/Exif.pm
Criterion Covered Total %
branch 394 816 48.2


line true false branch
5318 71 208 if ($et->{'FILE_TYPE'} eq "TIFF" and not $et->{'IdentifiedRawFile'})
5319 3 68 if ($Image::ExifTool::Exif::compression{$comp} and $Image::ExifTool::Exif::compression{$comp} =~ /^\w+ ([A-Z]{3}) Compressed$/)
5334 0 129 unless @_ >= 3
5336 0 382 unless $_ and /([+-]?(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?)/ and $1 > 0
5365 29 533 if $focal and $foc35
5371 54 479 if ($et->{'Make'} eq "Canon")
5374 28 26 if $canonDiag
5376 497 36 unless ($diag and &Image::ExifTool::IsFloat($diag))
5377 0 497 if ($sens and $sensXY =~ / (\d+(\.?\d*)?)$/) { }
5383 17 480 if ($xsize and $ysize)
5386 17 0 if (abs $a - "1.3333" < "0.1" or abs $a - "1.5" < "0.1")
5391 480 17 unless ($diag)
5397 0 122 unless &Image::ExifTool::IsFloat($x_res) and $x_res != 0
5398 0 122 unless &Image::ExifTool::IsFloat($y_res) and $y_res != 0
5401 0 124 if @_ < 2
5404 2 122 unless $w and $h
5406 122 0 if $a > "0.5" and $a < 2
5413 116 6 unless $diag > 1 and $diag < 100
5425 296 0 if (defined $val)
5427 268 28 if (not $val) { }
5 23 elsif (int($val) / $val > 0.999) { }
0 23 elsif (int($val * 2) / ($val * 2) > 0.999) { }
10 13 elsif (int($val * 3) / ($val * 3) > 0.999) { }
5447 428 737 if ($val =~ m[([-+]?\d+)/(\d+)])
5448 0 0 $1 ? :
428 0 $2 ? :
5462 1 95 if length $val < 8
5468 0 95 if ($et->{'OPTIONS'}{'Validate'} and $id =~ /^(ASCII|UNICODE|JIS)?\0* \0*$/)
5469 0 0 $tag ? :
5474 95 0 if ($id =~ /^(ASCII)?(\0|[\0 ]+$)/) { }
0 0 elsif ($id =~ /^(UNICODE)[\0 ]$/) { }
0 0 elsif ($id =~ /^(JIS)[\0 ]{5}$/) { }
5479 94 1 if ($asciiFlex and $asciiFlex eq 1)
5481 0 94 if $enc
5496 0 0 if $asciiFlex and $asciiFlex ne 1
5497 0 0 $tag ? :
5500 0 0 if ($et->{'WrongByteOrder'} and $et->{'OPTIONS'}{'Validate'})
5501 0 0 $tag ? :
0 0 $type ? :
5513 0 0 unless length $val > 4
5517 0 0 unless @cols == $n + 1 and $pos >= 4
5536 147 52 if $inv
5537 52 0 if ($val > 0)
5538 0 52 if ($val > 65520) { }
5557 28 39 if $val =~ /\bn/i or $isFloat and $val == 0
5559 0 39 if $val =~ /\b(s|l)/i or $isFloat and $val < 0
5561 37 2 if $val =~ /\bh/i or $isFloat
5586 146 86 unless $levels = shift()
5588 0 86 if @levels < 2
5591 78 8 if ($g < 4) { }
0 8 elsif ($levels[$$lookup[$blue * 3]] < 4) { }
5592 0 78 if @levels < 3
5593 0 78 unless $g = ($levels[$g] + $levels[$lookup->[2]]) / 2
5600 4 0 if not defined $val and ($_[0] and $_[1])
5609 0 575 unless &Image::ExifTool::IsFloat($secs)
5610 442 133 if ($secs < "0.25001" and $secs > 0)
5623 347 0 if (&Image::ExifTool::IsFloat($val) and $val > 0)
5625 13 334 $val < 1 ? :
5638 0 5 if ($val =~ /^[0-6]+$/)
5642 0 5 unless length $val >= 4
5643 2 3 &GetByteOrder() eq 'II' ? :
5645 2 3 if ($end > @a)
5648 0 2 if (@a < 2 + $x * $y) { }
5665 0 6 unless @a >= 2
5666 0 6 unless $a[0] and $a[1]
5668 0 6 if $end > @a
5673 6 18 if ++$pos >= $end
5674 12 6 if ($pos - 2) % $a[1]
5687 0 0 if $inv
5688 0 0 unless length $$val > 4
5693 0 0 unless $pos + 16 <= length $$val
5709 0 12 unless @vals == 4
5712 44 4 if &Image::ExifTool::IsFloat($_)
5713 0 4 if $_ eq "inf"
5714 4 0 if $_ eq "undef"
5716 0 12 unless $c == 4
5719 9 3 if $vals[1] and $vals[1] ne $vals[0]
5721 5 7 if $vals[3] and $vals[3] ne $vals[2]
5735 7 46 if $unk
5736 20 33 unless $lens =~ m[($pat)(?:-($pat))?\s*mm.*?(?:[fF]/?\s*)($pat)(?:-($pat))?]
5739 0 33 unless $a[1]
5740 0 33 unless $a[3]
5741 1 32 if ($unk)
5755 0 4 if (@$try > 1 and $lensModel)
5758 0 0 if ($lensModel =~ /((\d+-)?\d+mm)/)
5761 0 0 if @filt and @filt < @$try
5764 0 0 if (@$try > 1 and $lensModel =~ m[(?:F/?|1:)(\d+(\.\d+)?)]i)
5767 0 0 if @filt and @filt < @$try
5771 0 0 unless @$try > 1 and $lensModel =~ /\b($pat)\b/
5774 0 0 if @filt and @filt < @$try
5792 0 36 unless defined $lensType
5794 36 0 unless $printConv
5797 0 36 unless (ref $printConv eq "HASH")
5798 0 0 if (ref $printConv eq 'ARRAY' and ref $printConv->[0] eq 'HASH') { }
5803 0 0 if $lensTypePrt =~ /mm/
5804 0 0 if $lensTypePrt =~ s[(\d)/F][$1mm F]
5810 0 36 if ($lensSpecPrt)
5812 0 0 unless $sa0
5815 2 34 unless $maxAperture
5816 1 35 if ($lensFocalRange and $lensFocalRange =~ /^(\d+)(?: (?:to )?(\d+))?$/)
5819 0 36 if ($et->{'Make'} eq 'SONY') { }
30 6 elsif ($shortFocal and $longFocal and not $lensModel && $lensModel =~ /^TAMRON.*-\d+mm/) { }
5820 0 0 if ($lensType eq 65535) { }
0 0 elsif ($lensType != 65280) { }
5822 0 0 if $printConv->{$lensType} and not $focalLength and $maxAperture == 1
5824 0 0 if ($et->{'Model'} =~ /NEX|ILCE/)
5825 0 0 unless (%sonyEtype)
5830 0 0 if $did{$lens}
5831 0 0 $index ? :
5844 0 0 if ($Image::ExifTool::Minolta::metabonesID{$lensType & 65280}) { }
0 0 elsif ($lensType >= 18688 and $lensType <= 22794) { }
5845 0 0 $lensType >= 48128 ? :
0 0 $lensType >= 61184 ? :
5848 0 0 if $printConv->{$lensType}
5856 0 0 if $printConv->{$lensType}
5868 1 5 unless $lens
5869 1 4 unless $$printConv{"$lensType.1"}
5880 0 32 if $Image::ExifTool::userLens{$lens}
5886 4 28 unless $sf
5888 0 28 if ($sf0)
5889 0 0 if abs $sf - $sf0 > "0.5" or abs $sa - $sa0 > "0.15" or abs $lf - $lf0 > "0.5" or abs $la - $la0 > "0.15"
5896 0 0 if $lensSpecPrt and $lens =~ / \Q$lensSpecPrt\E( \(| GM$|$)/
5898 0 0 unless $lens =~ /^Sony /
5902 0 28 if ($lens =~ / \+ .*? (\d+(\.\d+)?)x( |$)/)
5907 28 0 if ($focalLength)
5908 19 9 if $focalLength < $sf - "0.5"
5909 1 8 if $focalLength > $lf + "0.5"
5911 8 0 if ($maxAperture)
5917 5 3 if $maxAperture < $sa - "0.15"
5918 0 3 if $maxAperture > $la + "0.15"
5921 3 0 if ($sf == $lf or $sa == $la or $focalLength <= $sf) { }
0 0 elsif ($focalLength >= $lf) { }
5935 0 3 if (defined $diff)
5936 0 0 if $d > $diff + "0.15"
5937 0 0 if $d < $diff - "0.15"
5945 0 4 if (@user)
5947 0 0 if (@user > 1)
5951 0 0 if @good
5957 1 3 unless @best
5958 3 1 if (@best)
5963 0 1 if $lensModel and $lens =~ / or /
6017 52 8 ref $tagInfo eq 'HASH' ? :
6018 0 60 unless defined $fmt
6020 0 60 unless defined $val
6023 4 56 if $tag == 273
6024 12 48 if (length $val > 4) { }
6028 24 24 if length $val < 4
6033 0 4 unless $offsetPos
6050 0 14 if $et->{'FILE_TYPE'} eq "RWZ"
6053 26 14 $i ? :
6054 14 26 unless defined $value->{$key}
6055 14 12 unless $value->{$key} == 1
6058 6 6 unless $cmp == 1
6065 58 2 if defined $val
6066 0 2 unless defined $vals{$_}
6077 2 4 unless $len[$j] == $rowBytes * $vals{'RowsPerStrip'}
6079 0 4 unless defined $tmp
6102 0 4 if (not defined $img) { }
0 4 elsif ($rtn or $w > 256) { }
6103 0 0 $w > 256 ? :
6111 0 14 unless wantarray
6129 61 148 if not $len or $et->{'FILE_TYPE'} eq "XMP"
6132 106 42 if (defined $dataPos and $offset >= $dataPos and $offset + $len <= $dataPos + length($$dataPt)) { }
6136 5 37 unless defined $image
6138 0 0 if ($tag and $tag eq "ThumbnailImage" and $et->{'TIFF_TYPE'} eq "ARW" and $et->{'Model'} eq "DSLR-A100" and $offset < 65536 and not $image =~ /^(Binary data|\xff\xd8\xff)/)
6143 0 0 if (defined $try and $try =~ /^\xff\xd8\xff/)
6160 19 1 $tagInfo ? :
6172 0 0 defined $et->{'OffsetNum'} ? :
6175 0 0 defined $id ? :
6205 94 1030 if ($dirName eq "MakerNotes")
6206 0 16 if ($et->{'FileType'} eq "CR3" and $dirInfo->{'Parent'} and $dirInfo->{'Parent'} eq "ExifIFD")
6209 2 65 if ($dirInfo->{'TagInfo'} and $dirInfo->{'TagInfo'}{'MakerNotes'} and $et->{'ExifByteOrder'} and $et->{'ExifByteOrder'} ne &GetByteOrder())
6217 0 0 if $et->{'ImageDataHash'} and $et->{'FILE_TYPE'} eq 'TIFF' && !$base && !$inMakerNotes || $et->{'FILE_TYPE'} eq 'RAF' && $dirName eq 'FujiIFD'
6220 885 239 if $tagTablePtr->{'GROUPS'}{'0'} eq "EXIF"
6223 7 0 if ($validate || $Image::ExifTool::MWG::strict and $dirName eq "IFD0" and $isExif and $et->{'FILE_TYPE'} =~ /^(JPEG|TIFF|PSD)$/)
6227 7 0 if ($path =~ /^(JPEG-APP1-IFD0|TIFF-IFD0|PSD-EXIFInfo-IFD0)$/) { }
6228 7 0 unless ($et->{'DOC_NUM'})
6229 0 7 if $et->{'HasExif'}
6233 0 0 if ($Image::ExifTool::MWG::strict) { }
6242 0 1124 if $htmlDump
6243 7 1117 if $validate and not $verbose
6244 1 1123 if $dirName eq "EXIF"
6245 290 834 if $dirName =~ /^(IFD0|SubIFD)$/ and not defined $dirInfo->{'Multi'}
6248 544 30 unless $dir and $inMakerNotes and not $dir =~ /^MakerNote/
6251 1048 76 if ($dirStart >= 0 and $dirStart <= $dataLen - 2)
6256 394 654 if ($dirSize > $dirLen)
6257 0 394 if ($verbose > 0 || $validate and not $dirInfo->{'SubIFD'})
6263 0 394 if $dirEnd > $dataLen
6267 76 1048 unless ($dirSize)
6269 76 0 if ($raf)
6273 76 0 if ($raf->Seek($offset + $base, 0) and $raf->Read($buff, 2) == 2)
6276 76 0 if ($raf->Read($buf2, $len + 4) >= $len)
6287 76 0 if ($success) { }
6291 0 0 unless $inMakerNotes and $dirLen >= 14 and $dirStart >= 0 and $dirStart + $dirLen <= length $$dataPt
6300 14 1110 if $verbose > 0
6302 4 1120 if ($bytesFromEnd < 4)
6303 0 4 unless ($bytesFromEnd == 2 or $bytesFromEnd == 0)
6309 134 990 if (defined $dirInfo->{'MakerNoteAddr'})
6312 3 131 if (&Image::ExifTool::MakerNotes::FixBase($et, $dirInfo))
6317 0 1124 if ($htmlDump)
6319 0 0 $dir eq 'MakerNotes' ? :
6320 0 0 if (defined $makerAddr)
6322 0 0 if $hdrLen > 0
6324 0 0 unless ($dirInfo->{'NoDumpEntryCount'})
6330 0 0 if ($bytesFromEnd >= 4)
6331 0 0 $dir =~ /^(.*?)(\d+)$/ ? :
6334 0 0 if $off
6341 0 183 if ($inMakerNotes and $et->{'Model'} eq "Canon EOS 40D" and $numEntries)
6344 0 0 if ($fmt < 1 or $fmt > 13)
6358 7 1117 if $tagTablePtr->{'VARS'}
6362 0 15784 if ($warnCount > 10)
6363 0 0 if $et->Warn("Too many warnings -- $dir parsing aborted", 2)
6370 0 0 if ($format < 1 || $format > 13 and $format != 129 and not $format == 16 && $et->{'Make'} eq 'Apple' && $inMakerNotes)
6371 0 0 if ($mapFmt and $mapFmt->{$format}) { }
6377 0 0 if ($format or $validate)
6382 0 0 if $index or $et->{'Model'} =~ /^ILCE/
6395 0 15784 if $saveFormat
6397 0 9339 if ($count < 2 and ref $tagTablePtr->{$tagID} eq "HASH" and $tagTablePtr->{$tagID}{'FixCount'})
6398 0 0 unless $offList
6401 0 0 if (defined $i and $i < $offList->$#*)
6404 0 0 if $oldCount != $count
6407 63 15721 if $validate and not $inMakerNotes
6411 7121 8663 if ($size > 4)
6412 0 7121 if ($size > 2147483647 and not $tagInfo && $tagInfo->{'ReadFromRAF'})
6418 20 7101 if ($validate and not $inMakerNotes)
6420 0 20 if $valuePtr & 1
6421 0 20 if ($valuePtr < 8 or $valuePtr + $size > length $$dataPt and $valuePtr + $size > $et->{'VALUE'}{'FileSize'})
6428 0 20 if ($valuePtr + $size > $dirStart + $dataPos and $valuePtr < $dirEnd + $dataPos + 4)
6432 81 0 if $_->[0] >= $valuePtr + $size or $_->[0] + $_->[1] <= $valuePtr
6438 0 7121 if ($dirInfo->{'FixOffsets'})
6440 0 0 unless $valEnd
6446 2 7119 if $valuePtr < 8 and not $dirInfo->{'ZeroOffsetOK'}
6448 10 7111 if ($dirInfo->{'EntryBased'} or ref $tagTablePtr->{$tagID} eq 'HASH' and $tagTablePtr->{$tagID}{'EntryBased'}) { }
6456 0 7121 if $valuePtr < $dirEnd and $valuePtr + $size > $dirStart
6458 449 6672 if ($valuePtr < 0 or $valuePtr + $size > $dataLen)
6461 449 0 if ($raf) { }
6464 0 0 if ($tagInfo) { }
6466 0 0 if $tagInfo->{'Unknown'}
6467 0 0 unless $tagInfo->{'Binary'}
6468 0 0 if $tagInfo->{'SubDirectory'}
6470 0 0 if ($et->{'OPTIONS'}{'Binary'} and not $et->{'EXCL_TAG_LOOKUP'}{$lcTag})
6474 0 0 unless $et->{'TAGS_FROM_FILE'} and $tagInfo->{'Protected'}
6477 0 0 if $et->{'REQ_TAG_LOOKUP'}{$lcTag}
6480 0 0 if defined $tagInfo
6490 449 0 unless (defined $buff)
6493 0 449 if (not $raf->Seek($base + $valuePtr + $dataPos, 0)) { }
0 449 elsif ($readFromRAF and $size > BINARY_DATA_LIMIT() and not $et->{'REQ_TAG_LOOKUP'}{lc $tagInfo->{'Name'}}) { }
0 449 elsif ($raf->Read($buff, $size) != $size) { }
0 449 elsif ($readFromRAF) { }
6502 0 0 if ($tagInfo and not $tagInfo->{'Unknown'})
6510 0 449 if ($wrn)
6512 0 0 unless $inMakerNotes or $htmlDump or $truncOK
6514 0 0 unless defined $buff
6516 0 0 unless $truncOK
6525 0 0 if ($tagInfo) { }
0 0 elsif (defined $tagInfo) { }
6530 0 0 if ($tmpInfo)
6535 0 0 if ($tagInfo and $tagInfo->{'ChangeBase'})
6541 0 0 unless $tagStr
6543 0 0 if ($tagStr eq 'PreviewImage' and $et->{'RAF'}) { }
0 0 elsif ($leicaTrailer and $et->{'RAF'}) { }
6552 0 0 if ($verbose > 0)
6555 0 0 if ($et->Options('FastScan')) { }
6570 0 0 unless (defined $buff)
6580 2 7119 if (defined $suspect and $suspect == $warnCount)
6581 2 0 $tagInfo ? :
6582 2 0 if ($et->Warn("Suspicious $dir offset for $tagStr", $inMakerNotes))
6584 2 0 unless $verbose
6589 319 15463 if $format == 7 and $count == 1
6592 0 15782 if ($tagID > 61440 and $isExif)
6594 0 0 if (!$oldInfo || ref $oldInfo eq 'HASH' && $oldInfo->{'Condition'} && !$oldInfo->{'PSRaw'} and not $bad)
6600 0 0 if (defined $val and $val =~ /(.*): (.*)/)
6605 0 0 if ($tag)
6614 0 0 if $oldInfo
6619 406 15376 if (defined $tagInfo and not $tagInfo)
6620 0 406 if ($bad) { }
6624 173 233 $readSize < 128 ? :
6631 0 15782 if ($format == 13 || $format == 18 and not $tagInfo && $tagInfo->{'SubIFD'})
6635 15200 582 if (defined $tagInfo) { }
6640 742 587 if $subdir and not $tagInfo->{'SubIFD'} and not $readFormat
6642 1842 13358 if ($readFormat)
6645 1000 842 if ($newNum and $newNum != $format)
6648 0 1000 if $tagInfo->{'FixedSize'}
6654 0 15200 if ($tagInfo->{'IsOffset'} || $tagInfo->{'SubIFD'} and not $Image::ExifTool::Exif::intFormat{$formatStr})
6656 0 0 if ($validate)
6660 0 0 unless $verbose
6664 579 3 unless $verbose
6666 15203 0 unless ($bad)
6670 0 15203 if ($count > 100000 and not $formatStr =~ /^(undef|string|binary)$/)
6671 0 0 $tagInfo ? :
6673 0 0 if ($tagName ne "TransferFunction" or $count != 196608)
6674 0 0 $count > 2000000 ? :
6675 0 0 if ($et->Warn("Ignoring $dirName $tagName with excessive count", $minor))
6676 0 0 unless $et->{'OPTIONS'}{'HtmlDump'}
6681 0 15203 if ($count > 500 and not $formatStr =~ /^(undef|string|binary)$/ and !$tagInfo || $tagInfo->{'LongBinary'} || $warned and not $et->{'OPTIONS'}{'IgnoreMinorErrors'}) { }
6684 0 0 unless $warned
6685 0 0 if $et->{'TAGS_FROM_FILE'}
6690 0 15203 if $saveBin
6692 15203 0 if (defined $val)
6693 0 15203 if ($formatStr eq 'utf8') { }
0 30406 elsif ($strEnc and $formatStr eq 'string') { }
6702 345 14858 if ($verbose)
6705 40 305 if defined $rational
6706 0 345 if ($htmlDump) { }
6708 0 0 if ($tagInfo) { }
0 0 elsif ($tagID == 37500 and $dirName eq 'ExifIFD') { }
6717 0 0 if $size < 0
6719 0 0 if $origFormStr and $origFormStr ne $fstr
6720 0 0 if $wrongFormat
6723 0 0 if ($size > 4) { }
6730 0 0 $bad || !defined($tval) ? :
6731 0 0 if ($actPt != $offPt)
6733 0 0 $actPt < $offPt ? :
6735 0 0 if $style eq "H"
6737 0 0 if ($et->{'EXIF_POS'} and not $et->{'BASE_FUDGE'})
6741 0 0 if $offPt & 1
6745 0 0 if $wrongFormat
6746 0 0 if $tagID <= $lastID and not $inMakerNotes
6748 0 0 if (not defined $tval) { }
6751 0 0 if length $tval > 32
6752 0 0 if ($formatStr =~ /^(string|undef|binary)/) { }
0 0 elsif ($tagInfo and &Image::ExifTool::IsInt($tval)) { }
6756 0 0 if ($tagInfo->{'IsOffset'} or $tagInfo->{'SubIFD'}) { }
0 0 elsif ($tagInfo->{'PrintHex'}) { }
6759 0 0 if ($actPt != $val)
6761 0 0 $actPt < $val ? :
6764 0 0 if ($et->{'EXIF_POS'} and not $et->{'BASE_FUDGE'})
6775 0 0 if $tagInfo and $tagInfo->{'SubIFD'}
6777 0 0 if $valueDataLen < 0
6778 0 0 if ($size > 4)
6781 0 0 if ($subdir)
6782 0 0 if ($tagInfo->{'MakerNotes'}) { }
0 0 elsif ($tagInfo->{'NestedHtmlDump'}) { }
6785 0 0 $tagInfo->{'NestedHtmlDump'} == 2 ? :
6790 0 0 if ($subdir and $tagInfo->{'MakerNotes'} and $tagInfo->{'NotIFD'})
6795 0 345 if ($tagID <= $lastID and not $inMakerNotes)
6796 0 0 $tagInfo ? :
6797 0 0 if ($tagID == $lastID) { }
6804 257 88 if ($verbose > 0)
6806 13 244 if $origFormStr
6820 3 342 if not $tagInfo or $wrongFormat
6822 0 15200 unless defined $val
6826 1329 13871 if ($subdir)
6828 0 1329 unless ($size)
6829 0 0 unless ($tagInfo->{'MakerNotes'} or $inMakerNotes)
6836 161 1168 if ($subdir->{'MaxSubdirs'})
6840 0 161 if ($over > 0)
6846 958 371 if ($subdir->{'TagTable'}) { }
6848 0 958 unless $newTagTable
6859 476 859 if (defined $subdir->{'Start'})
6864 0 476 unless (&Image::ExifTool::IsInt($newStart))
6871 51 0 unless ($tagInfo->{'SubIFD'} or $subdir->{'BadOffset'})
6880 186 1149 if ($newByteOrder) { }
6881 38 148 if ($newByteOrder =~ /^Little/i) { }
29 119 elsif ($newByteOrder =~ /^Big/i) { }
0 119 elsif ($subdir->{'OffsetPt'}) { }
119 0 elsif ($subdirStart + 2 <= $subdirDataLen) { }
6894 4 115 if ($num & 65280 and $num >> 8 > ($num & 255)) { }
6906 38 1297 if ($subdir->{'Base'})
6913 27 1308 if ($subdir->{'OffsetPt'})
6916 0 27 if ($pos + 4 > $subdirDataLen)
6924 31 1304 if ($subdirStart < 0 or $subdirStart + 2 > $subdirDataLen)
6926 31 0 if ($raf) { }
6933 0 0 if ($verbose > 0)
6934 0 0 if ($subdirStart < 0) { }
6970 141 1194 if ($tagInfo->{'MakerNotes'})
6973 1 140 if $fast and $fast > 1
6975 36 104 if defined $subdir->{'Base'}
6980 425 909 if ($tagInfo->{'Groups'} and not $tagInfo->{'Writable'})
6983 6 419 if $dirNum
6990 0 1334 if (defined $subdir->{'Validate'} and not eval $subdir->{'Validate'}) { }
6994 662 672 if (not $subdirInfo{'DirName'} and $inMakerNotes)
7001 0 7 if (not $ok and $verbose > 1 and $subdirStart != $valuePtr)
7007 1328 6 unless @values
7011 1106 2 unless $doMaker or $et->{'REQ_TAG_LOOKUP'}{lc $tagStr} or $tagInfo->{'BlockExtract'}
7013 23 200 if ($tagInfo->{'MakerNotes'}) { }
7015 23 0 if ($subdir->{'ByteOrder'} and not $invalid)
7018 1 22 defined $et->{'UnknownByteOrder'} ? :
7020 0 23 if ($doMaker and $doMaker eq '2') { }
23 0 elsif (not $tagInfo->{'NotIFD'} or $tagInfo->{'IsPhaseOne'}) { }
7041 0 23 if ($tagInfo->{'IsPhaseOne'}) { }
7046 1 22 if $subdir->{'FixBase'}
7050 23 0 if (defined $val2) { }
0 0 elsif ($size > 4) { }
7058 184 16 unless $tagInfo->{'Writable'}
7064 233 13677 if ($tagInfo->{'IsOffset'} and eval $tagInfo->{'IsOffset'})
7065 4 229 $tagInfo->{'IsOffset'} eq '2' ? :
7068 0 233 if ($tagInfo->{'WrongBase'})
7079 70 13840 if ($validate or $doHash)
7080 10 60 if ($tagInfo->{'OffsetPair'}) { }
10 100 elsif ($Image::ExifTool::Exif::saveForValidate{$tagID} and $isExif) { }
7088 13899 11 if (defined $tagKey)
7090 10378 3521 if $tagTablePtr->{'SET_GROUP1'}
7092 3006 10893 if defined $rational
7093 0 13899 if defined $binVal
7094 0 13899 if $saveFormat
7095 19 13880 if ($et->{'MAKER_NOTE_FIXUP'})
7102 5 1119 if (%offsetInfo)
7104 0 5 if $doHash
7106 5 0 if $validate
7110 309 815 if ($dirInfo->{'Multi'} and $bytesFromEnd >= 4) { }
179 636 elsif (defined $dirInfo->{'Multi'}) { }
7119 309 178 unless my $offset = &Get32u($dataPt, $dirEnd)
7122 178 0 $newDirInfo{'DirName'} =~ s/(\d+)$// ? :
7125 178 0 if ($newDirInfo{'DirName'} ne 'SubIFD1' or &ValidateIFD(\%newDirInfo)) { }
0 0 elsif ($verbose or $et->{'TIFF_TYPE'} eq 'TIFF') { }
7127 0 178 unless $et->ProcessDirectory(\%newDirInfo, $tagTablePtr)
7129 178 0 if ($success and $newDirInfo{'BytesFromEnd'} >= 4)