Branch Coverage

blib/lib/Image/ExifTool/Exif.pm
Criterion Covered Total %
branch 378 780 48.4


line true false branch
4985 71 199 if ($et->{'FILE_TYPE'} eq "TIFF" and not $et->{'IdentifiedRawFile'})
4986 3 68 if ($Image::ExifTool::Exif::compression{$comp} and $Image::ExifTool::Exif::compression{$comp} =~ /^\w+ ([A-Z]{3}) Compressed$/)
5001 0 126 unless @_ >= 3
5003 0 373 unless $_ and /([+-]?(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?)/ and $1 > 0
5032 28 528 if $focal and $foc35
5038 55 473 if ($et->{'Make'} eq "Canon")
5044 27 28 if $canonDiag
5046 493 35 unless ($diag and &Image::ExifTool::IsFloat($diag))
5047 0 493 if ($sens and $sensXY =~ / (\d+(\.?\d*)?)$/) { }
5053 19 474 if ($xsize and $ysize)
5056 19 0 if (abs $a - "1.3333" < "0.1" or abs $a - "1.5" < "0.1")
5061 474 19 unless ($diag)
5067 0 122 unless &Image::ExifTool::IsFloat($x_res) and $x_res != 0
5068 0 122 unless &Image::ExifTool::IsFloat($y_res) and $y_res != 0
5071 0 124 if @_ < 2
5074 2 122 unless $w and $h
5076 122 0 if $a > "0.5" and $a < 2
5083 116 6 unless $diag > 1 and $diag < 100
5095 286 0 if (defined $val)
5097 258 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) { }
5117 436 731 if ($val =~ m[([-+]?\d+)/(\d+)])
5118 0 0 $1 ? :
436 0 $2 ? :
5132 0 87 if length $val < 8
5138 0 87 if ($et->{'OPTIONS'}{'Validate'} and $id =~ /^(ASCII|UNICODE|JIS)?\0* \0*$/)
5139 0 0 $tag ? :
5144 87 0 if ($id =~ /^(ASCII)?(\0|[\0 ]+$)/) { }
0 0 elsif ($id =~ /^(UNICODE)[\0 ]$/) { }
0 0 elsif ($id =~ /^(JIS)[\0 ]{5}$/) { }
5149 86 1 if ($asciiFlex and $asciiFlex eq 1)
5151 0 86 if $enc
5166 0 0 if $asciiFlex and $asciiFlex ne 1
5167 0 0 $tag ? :
5170 0 0 if ($et->{'WrongByteOrder'} and $et->{'OPTIONS'}{'Validate'})
5171 0 0 $tag ? :
0 0 $type ? :
5183 0 0 unless length $val > 4
5187 0 0 unless @cols == $n + 1 and $pos >= 4
5206 147 48 if $inv
5207 48 0 if ($val > 0)
5208 0 48 if ($val > 65520) { }
5227 28 39 if $val =~ /\bn/i or $isFloat and $val == 0
5229 0 39 if $val =~ /\b(s|l)/i or $isFloat and $val < 0
5231 37 2 if $val =~ /\bh/i or $isFloat
5256 146 82 unless $levels = shift()
5258 0 82 if @levels < 2
5261 74 8 if ($g < 4) { }
0 8 elsif ($levels[$$lookup[$blue * 3]] < 4) { }
5262 0 74 if @levels < 3
5263 0 74 unless $g = ($levels[$g] + $levels[$lookup->[2]]) / 2
5270 4 0 if not defined $val and ($_[0] and $_[1])
5279 0 574 unless &Image::ExifTool::IsFloat($secs)
5280 447 127 if ($secs < "0.25001" and $secs > 0)
5293 354 0 if (&Image::ExifTool::IsFloat($val) and $val > 0)
5295 15 339 $val < 1 ? :
5308 0 5 if ($val =~ /^[0-6]+$/)
5312 0 5 unless length $val >= 4
5313 2 3 &GetByteOrder() eq 'II' ? :
5315 2 3 if ($end > @a)
5318 0 2 if (@a < 2 + $x * $y) { }
5335 0 6 unless @a >= 2
5336 0 6 unless $a[0] and $a[1]
5338 0 6 if $end > @a
5343 6 18 if ++$pos >= $end
5344 12 6 if ($pos - 2) % $a[1]
5357 0 0 if $inv
5358 0 0 unless length $$val > 4
5363 0 0 unless $pos + 16 <= length $$val
5379 0 10 unless @vals == 4
5382 36 4 if &Image::ExifTool::IsFloat($_)
5383 0 4 if $_ eq "inf"
5384 4 0 if $_ eq "undef"
5386 0 10 unless $c == 4
5389 8 2 if $vals[1] and $vals[1] ne $vals[0]
5391 4 6 if $vals[3] and $vals[3] ne $vals[2]
5405 7 46 if $unk
5406 20 33 unless $lens =~ m[($pat)(?:-($pat))?\s*mm.*?(?:[fF]/?\s*)($pat)(?:-($pat))?]
5409 0 33 unless $a[1]
5410 0 33 unless $a[3]
5411 1 32 if ($unk)
5425 0 4 if (@$try > 1 and $lensModel)
5428 0 0 if ($lensModel =~ /((\d+-)?\d+mm)/)
5431 0 0 if @filt and @filt < @$try
5434 0 0 if (@$try > 1 and $lensModel =~ m[(?:F/?|1:)(\d+(\.\d+)?)]i)
5437 0 0 if @filt and @filt < @$try
5441 0 0 unless @$try > 1 and $lensModel =~ /\b($pat)\b/
5444 0 0 if @filt and @filt < @$try
5462 0 34 unless defined $lensType
5464 34 0 unless $printConv
5467 0 34 unless (ref $printConv eq "HASH")
5468 0 0 if (ref $printConv eq 'ARRAY' and ref $printConv->[0] eq 'HASH') { }
5473 0 0 if $lensTypePrt =~ /mm/
5474 0 0 if $lensTypePrt =~ s[(\d)/F][$1mm F]
5480 0 34 if ($lensSpecPrt)
5482 0 0 unless $sa0
5485 2 32 unless $maxAperture
5486 1 33 if ($lensFocalRange and $lensFocalRange =~ /^(\d+)(?: (?:to )?(\d+))?$/)
5489 0 34 if ($et->{'Make'} eq 'SONY') { }
28 6 elsif ($shortFocal and $longFocal and not $lensModel && $lensModel =~ /^TAMRON.*-\d+mm/) { }
5490 0 0 if ($lensType eq 65535) { }
0 0 elsif ($lensType != 65280) { }
5492 0 0 if ($et->{'Model'} =~ /NEX|ILCE/)
5493 0 0 unless (%sonyEtype)
5498 0 0 if $did{$lens}
5499 0 0 $index ? :
5512 0 0 if ($Image::ExifTool::Minolta::metabonesID{$lensType & 65280}) { }
0 0 elsif ($lensType >= 18688 and $lensType <= 22794) { }
5513 0 0 $lensType >= 48128 ? :
0 0 $lensType >= 61184 ? :
5516 0 0 if $printConv->{$lensType}
5524 0 0 if $printConv->{$lensType}
5536 1 5 unless $lens
5537 1 4 unless $$printConv{"$lensType.1"}
5548 0 32 if $Image::ExifTool::userLens{$lens}
5554 4 28 unless $sf
5556 0 28 if ($sf0)
5557 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"
5564 0 0 if $lensSpecPrt and $lens =~ / \Q$lensSpecPrt\E( \(| GM$|$)/
5566 0 0 unless $lens =~ /^Sony /
5570 0 28 if ($lens =~ / \+ .*? (\d+(\.\d+)?)x( |$)/)
5575 28 0 if ($focalLength)
5576 19 9 if $focalLength < $sf - "0.5"
5577 1 8 if $focalLength > $lf + "0.5"
5579 8 0 if ($maxAperture)
5585 5 3 if $maxAperture < $sa - "0.15"
5586 0 3 if $maxAperture > $la + "0.15"
5589 3 0 if ($sf == $lf or $sa == $la or $focalLength <= $sf) { }
0 0 elsif ($focalLength >= $lf) { }
5603 0 3 if (defined $diff)
5604 0 0 if $d > $diff + "0.15"
5605 0 0 if $d < $diff - "0.15"
5613 0 4 if (@user)
5615 0 0 if (@user > 1)
5619 0 0 if @good
5625 1 3 unless @best
5626 3 1 if (@best)
5631 0 1 if $lensModel and $lens =~ / or /
5685 52 8 ref $tagInfo eq 'HASH' ? :
5686 0 60 unless defined $fmt
5688 0 60 unless defined $val
5691 4 56 if $tag == 273
5692 12 48 if (length $val > 4) { }
5696 24 24 if length $val < 4
5701 0 4 unless $offsetPos
5718 0 14 if $et->{'FILE_TYPE'} eq "RWZ"
5721 26 14 $i ? :
5722 14 26 unless defined $value->{$key}
5723 14 12 unless $value->{$key} == 1
5726 6 6 unless $cmp == 1
5733 58 2 if defined $val
5734 0 2 unless defined $vals{$_}
5745 2 4 unless $len[$j] == $rowBytes * $vals{'RowsPerStrip'}
5747 0 4 unless defined $tmp
5770 0 4 if (not defined $img) { }
0 4 elsif ($rtn or $w > 256) { }
5771 0 0 $w > 256 ? :
5779 0 14 unless wantarray
5797 61 139 if not $len or $et->{'FILE_TYPE'} eq "XMP"
5800 97 42 if (defined $dataPos and $offset >= $dataPos and $offset + $len <= $dataPos + length($$dataPt)) { }
5804 5 37 unless defined $image
5806 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)/)
5811 0 0 if (defined $try and $try =~ /^\xff\xd8\xff/)
5828 19 1 $tagInfo ? :
5840 0 0 defined $et->{'OffsetNum'} ? :
5843 0 0 defined $id ? :
5875 828 228 if $tagTablePtr->{'GROUPS'}{'0'} eq "EXIF"
5878 7 0 if ($validate || $Image::ExifTool::MWG::strict and $dirName eq "IFD0" and $isExif and $et->{'FILE_TYPE'} =~ /^(JPEG|TIFF|PSD)$/)
5882 0 7 unless ($path =~ /^(JPEG-APP1-IFD0|TIFF-IFD0|PSD-EXIFInfo-IFD0)$/)
5883 0 0 if ($Image::ExifTool::MWG::strict) { }
5892 0 1056 if $htmlDump
5893 7 1049 if $validate and not $verbose
5894 1 1055 if $dirName eq "EXIF"
5895 273 783 if $dirName =~ /^(IFD0|SubIFD)$/ and not defined $dirInfo->{'Multi'}
5898 502 30 unless $dir and $inMakerNotes and not $dir =~ /^MakerNote/
5901 980 76 if ($dirStart >= 0 and $dirStart <= $dataLen - 2)
5906 363 617 if ($dirSize > $dirLen)
5907 0 363 if ($verbose > 0 || $validate and not $dirInfo->{'SubIFD'})
5913 0 363 if $dirEnd > $dataLen
5917 76 980 unless ($dirSize)
5919 76 0 if ($raf)
5923 76 0 if ($raf->Seek($offset + $base, 0) and $raf->Read($buff, 2) == 2)
5926 76 0 if ($raf->Read($buf2, $len + 4) >= $len)
5937 76 0 if ($success) { }
5941 0 0 unless $inMakerNotes and $dirLen >= 14 and $dirStart >= 0 and $dirStart + $dirLen <= length $$dataPt
5950 14 1042 if $verbose > 0
5952 4 1052 if ($bytesFromEnd < 4)
5953 0 4 unless ($bytesFromEnd == 2 or $bytesFromEnd == 0)
5959 123 933 if (defined $dirInfo->{'MakerNoteAddr'})
5962 3 120 if (&Image::ExifTool::MakerNotes::FixBase($et, $dirInfo))
5967 0 1056 if ($htmlDump)
5969 0 0 $dir eq 'MakerNotes' ? :
5970 0 0 if (defined $makerAddr)
5972 0 0 if $hdrLen > 0
5974 0 0 unless ($dirInfo->{'NoDumpEntryCount'})
5980 0 0 if ($bytesFromEnd >= 4)
5981 0 0 $dir =~ /^(.*?)(\d+)$/ ? :
5984 0 0 if $off
5991 0 172 if ($inMakerNotes and $et->{'Model'} eq "Canon EOS 40D" and $numEntries)
5994 0 0 if ($fmt < 1 or $fmt > 13)
6008 7 1049 if $tagTablePtr->{'VARS'}
6012 0 15012 if ($warnCount > 10)
6013 0 0 if $et->Warn("Too many warnings -- $dir parsing aborted", 2)
6020 0 15012 if ($format < 1 || $format > 13 and not $format == 16 && $et->{'Make'} eq 'Apple' && $inMakerNotes)
6021 0 0 if ($mapFmt and $mapFmt->{$format}) { }
6027 0 0 if ($format or $validate)
6032 0 0 unless $index or $et->{'Model'} eq "ILCE-7M2"
6044 0 15012 if $saveFormat
6046 0 8934 if ($count < 2 and ref $tagTablePtr->{$tagID} eq "HASH" and $tagTablePtr->{$tagID}{'FixCount'})
6047 0 0 unless $offList
6050 0 0 if (defined $i and $i < $#$offList)
6053 0 0 if $oldCount != $count
6056 63 14949 if $validate and not $inMakerNotes
6060 6747 8265 if ($size > 4)
6061 0 6747 if ($size > 2147483647 and not $tagInfo && $tagInfo->{'ReadFromRAF'})
6067 20 6727 if ($validate and not $inMakerNotes)
6069 0 20 if $valuePtr & 1
6070 0 20 if ($valuePtr < 8 or $valuePtr + $size > length $$dataPt and $valuePtr + $size > $et->{'VALUE'}{'FileSize'})
6077 0 20 if ($valuePtr + $size > $dirStart + $dataPos and $valuePtr < $dirEnd + $dataPos + 4)
6081 81 0 if $_->[0] >= $valuePtr + $size or $_->[0] + $_->[1] <= $valuePtr
6087 0 6747 if ($dirInfo->{'FixOffsets'})
6089 0 0 unless $valEnd
6095 2 6745 if $valuePtr < 8 and not $dirInfo->{'ZeroOffsetOK'}
6097 10 6737 if ($dirInfo->{'EntryBased'} or ref $tagTablePtr->{$tagID} eq 'HASH' and $tagTablePtr->{$tagID}{'EntryBased'}) { }
6105 0 6747 if $valuePtr < $dirEnd and $valuePtr + $size > $dirStart
6107 449 6298 if ($valuePtr < 0 or $valuePtr + $size > $dataLen)
6110 449 0 if ($raf) { }
6113 0 0 if ($tagInfo) { }
6115 0 0 if $tagInfo->{'Unknown'}
6116 0 0 unless $tagInfo->{'Binary'}
6117 0 0 if $tagInfo->{'SubDirectory'}
6119 0 0 if ($et->{'OPTIONS'}{'Binary'} and not $et->{'EXCL_TAG_LOOKUP'}{$lcTag})
6123 0 0 unless $et->{'TAGS_FROM_FILE'} and $tagInfo->{'Protected'}
6126 0 0 if $et->{'REQ_TAG_LOOKUP'}{$lcTag}
6129 0 0 if defined $tagInfo
6139 449 0 unless (defined $buff)
6142 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) { }
6155 0 449 if ($wrn)
6157 0 0 unless $inMakerNotes or $htmlDump
6159 0 0 unless defined $buff
6170 0 0 if ($tagInfo) { }
0 0 elsif (defined $tagInfo) { }
6175 0 0 if ($tmpInfo)
6180 0 0 if ($tagInfo and $tagInfo->{'ChangeBase'})
6186 0 0 unless $tagStr
6188 0 0 if ($tagStr eq 'PreviewImage' and $et->{'RAF'}) { }
0 0 elsif ($leicaTrailer and $et->{'RAF'}) { }
6197 0 0 if ($verbose > 0)
6200 0 0 if ($et->Options('FastScan')) { }
6215 0 0 unless (defined $buff)
6225 2 6745 if (defined $suspect and $suspect == $warnCount)
6226 2 0 $tagInfo ? :
6227 2 0 if ($et->Warn("Suspicious $dir offset for $tagStr", $inMakerNotes))
6229 2 0 unless $verbose
6234 298 14712 if $format == 7 and $count == 1
6237 0 15010 if ($tagID > 61440 and $isExif)
6239 0 0 if (!$oldInfo || ref $oldInfo eq 'HASH' && $oldInfo->{'Condition'} && !$oldInfo->{'PSRaw'} and not $bad)
6245 0 0 if (defined $val and $val =~ /(.*): (.*)/)
6250 0 0 if ($tag)
6259 0 0 if $oldInfo
6264 387 14623 if (defined $tagInfo and not $tagInfo)
6265 0 387 if ($bad) { }
6269 169 218 $readSize < 128 ? :
6276 0 15010 if ($format == 13 || $format == 18 and not $tagInfo && $tagInfo->{'SubIFD'})
6280 14462 548 if (defined $tagInfo) { }
6285 702 545 if $subdir and not $tagInfo->{'SubIFD'} and not $readFormat
6287 1741 12721 if ($readFormat)
6290 948 793 if ($newNum and $newNum != $format)
6293 0 948 if $tagInfo->{'FixedSize'}
6299 0 14462 if ($tagInfo->{'IsOffset'} || $tagInfo->{'SubIFD'} and not $Image::ExifTool::Exif::intFormat{$formatStr})
6301 0 0 if ($validate)
6305 0 0 unless $verbose
6309 545 3 unless $verbose
6311 14465 0 unless ($bad)
6315 0 14465 if ($count > 100000 and not $formatStr =~ /^(undef|string|binary)$/)
6316 0 0 $tagInfo ? :
6318 0 0 if ($tagName ne "TransferFunction" or $count != 196608)
6319 0 0 $count > 2000000 ? :
6320 0 0 if ($et->Warn("Ignoring $dirName $tagName with excessive count", $minor))
6321 0 0 unless $et->{'OPTIONS'}{'HtmlDump'}
6326 0 14465 if ($count > 500 and not $formatStr =~ /^(undef|string|binary)$/ and !$tagInfo || $tagInfo->{'LongBinary'} || $warned and not $et->{'OPTIONS'}{'IgnoreMinorErrors'}) { }
6329 0 0 unless $warned
6330 0 0 if $et->{'TAGS_FROM_FILE'}
6336 0 0 if $strEnc and $formatStr eq "string" and defined $val
6340 345 14120 if ($verbose)
6343 40 305 if defined $rational
6344 0 345 if ($htmlDump) { }
6346 0 0 if ($tagID == 37500 and $dirName eq 'ExifIFD') { }
0 0 elsif ($tagInfo) { }
6355 0 0 if $size < 0
6357 0 0 if $origFormStr and $origFormStr ne $fstr
6358 0 0 if $wrongFormat
6361 0 0 if ($size > 4) { }
6367 0 0 $bad || !defined($tval) ? :
6368 0 0 if ($actPt != $offPt)
6370 0 0 $actPt < $offPt ? :
6372 0 0 if $style eq "H"
6374 0 0 if ($et->{'EXIF_POS'} and not $et->{'BASE_FUDGE'})
6378 0 0 if $offPt & 1
6382 0 0 if $wrongFormat
6383 0 0 if $tagID <= $lastID and not $inMakerNotes
6385 0 0 if (not defined $tval) { }
6388 0 0 if length $tval > 32
6389 0 0 if ($formatStr =~ /^(string|undef|binary)/) { }
0 0 elsif ($tagInfo and &Image::ExifTool::IsInt($tval)) { }
6393 0 0 if ($tagInfo->{'IsOffset'} or $tagInfo->{'SubIFD'}) { }
0 0 elsif ($tagInfo->{'PrintHex'}) { }
6396 0 0 if ($actPt != $val)
6398 0 0 $actPt < $val ? :
6409 0 0 if $tagInfo and $tagInfo->{'SubIFD'}
6411 0 0 if $valueDataLen < 0
6412 0 0 if ($size > 4)
6415 0 0 if ($subdir)
6416 0 0 if ($tagInfo->{'MakerNotes'}) { }
0 0 elsif ($tagInfo->{'NestedHtmlDump'}) { }
6419 0 0 $tagInfo->{'NestedHtmlDump'} == 2 ? :
6426 0 345 if ($tagID <= $lastID and not $inMakerNotes)
6427 0 0 $tagInfo ? :
6428 0 0 if ($tagID == $lastID) { }
6435 257 88 if ($verbose > 0)
6437 13 244 if $origFormStr
6451 3 342 if not $tagInfo or $wrongFormat
6453 0 14462 unless defined $val
6457 1247 13215 if ($subdir)
6459 0 1247 unless ($size)
6460 0 0 unless ($tagInfo->{'MakerNotes'} or $inMakerNotes)
6467 144 1103 if ($subdir->{'MaxSubdirs'})
6471 0 144 if ($over > 0)
6477 902 345 if ($subdir->{'TagTable'}) { }
6479 0 902 unless $newTagTable
6490 445 808 if (defined $subdir->{'Start'})
6495 0 445 unless (&Image::ExifTool::IsInt($newStart))
6502 51 0 unless ($tagInfo->{'SubIFD'} or $subdir->{'BadOffset'})
6511 171 1082 if ($newByteOrder) { }
6512 31 140 if ($newByteOrder =~ /^Little/i) { }
29 111 elsif ($newByteOrder =~ /^Big/i) { }
0 111 elsif ($subdir->{'OffsetPt'}) { }
111 0 elsif ($subdirStart + 2 <= $subdirDataLen) { }
6525 4 107 if ($num & 65280 and $num >> 8 > ($num & 255)) { }
6537 35 1218 if ($subdir->{'Base'})
6544 24 1229 if ($subdir->{'OffsetPt'})
6547 0 24 if ($pos + 4 > $subdirDataLen)
6555 31 1222 if ($subdirStart < 0 or $subdirStart + 2 > $subdirDataLen)
6557 31 0 if ($raf) { }
6564 0 0 if ($verbose > 0)
6565 0 0 if ($subdirStart < 0) { }
6601 130 1123 if ($tagInfo->{'MakerNotes'})
6604 1 129 if $fast and $fast > 1
6606 33 96 if defined $subdir->{'Base'}
6611 394 858 if ($tagInfo->{'Groups'} and not $tagInfo->{'Writable'})
6614 6 388 if $dirNum
6621 0 1252 if (defined $subdir->{'Validate'} and not eval $subdir->{'Validate'}) { }
6625 622 630 if (not $subdirInfo{'DirName'} and $inMakerNotes)
6632 0 7 if (not $ok and $verbose > 1 and $subdirStart != $valuePtr)
6638 1246 6 unless @values
6642 1043 2 unless $doMaker or $et->{'REQ_TAG_LOOKUP'}{lc $tagStr} or $tagInfo->{'BlockExtract'}
6644 20 184 if ($tagInfo->{'MakerNotes'}) { }
6646 20 0 if ($subdir->{'ByteOrder'} and not $invalid)
6649 1 19 defined $et->{'UnknownByteOrder'} ? :
6651 0 20 if ($doMaker and $doMaker eq '2') { }
20 0 elsif (not $tagInfo->{'NotIFD'} or $tagInfo->{'IsPhaseOne'}) { }
6672 0 20 if ($tagInfo->{'IsPhaseOne'}) { }
6677 1 19 if $subdir->{'FixBase'}
6681 20 0 if (defined $val2) { }
0 0 elsif ($size > 4) { }
6689 168 16 unless $tagInfo->{'Writable'}
6695 224 13027 if ($tagInfo->{'IsOffset'} and eval $tagInfo->{'IsOffset'})
6696 4 220 $tagInfo->{'IsOffset'} eq '2' ? :
6699 0 224 if ($tagInfo->{'WrongBase'})
6710 70 13181 if ($validate)
6711 10 60 if ($tagInfo->{'OffsetPair'}) { }
10 100 elsif ($Image::ExifTool::Exif::saveForValidate{$tagID} and $isExif) { }
6719 13240 11 if (defined $tagKey)
6721 9909 3331 if $tagTablePtr->{'SET_GROUP1'}
6723 2878 10362 if defined $rational
6724 0 13240 if $saveFormat
6729 5 1051 if ($validate and %offsetInfo)
6734 292 764 if ($dirInfo->{'Multi'} and $bytesFromEnd >= 4) { }
170 594 elsif (defined $dirInfo->{'Multi'}) { }
6743 292 169 unless my $offset = &Get32u($dataPt, $dirEnd)
6746 169 0 $newDirInfo{'DirName'} =~ s/(\d+)$// ? :
6749 169 0 if ($newDirInfo{'DirName'} ne 'SubIFD1' or &ValidateIFD(\%newDirInfo)) { }
0 0 elsif ($verbose or $et->{'TIFF_TYPE'} eq 'TIFF') { }
6751 0 169 unless $et->ProcessDirectory(\%newDirInfo, $tagTablePtr)
6753 169 0 if ($success and $newDirInfo{'BytesFromEnd'} >= 4)