Branch Coverage

blib/lib/Image/ExifTool.pm
Criterion Covered Total %
branch 2028 3354 60.4


line true false branch
2321 226 0 unless (defined $str)
2322 0 226 unless defined $Image::ExifTool::evalWarning
2326 206 20 if $str =~ /(.*?) at /s
2387 530 9 if (ref $_[0] and UNIVERSAL::isa($_[0], 'Image::ExifTool')) { }
2423 535 23351 unless (exists $options->{$param})
2426 0 535 if ($fixed) { }
2433 0 59 if (ref $oldVal eq "HASH" and $param eq 'Compact' || $param eq 'XMPShorthand')
2437 17749 6137 unless @_
2439 78 6059 if ($param eq 'Lang') { }
8 6051 elsif ($param eq 'Exclude' and defined $newVal) { }
364 5687 elsif ($param =~ /^Charset/ or $param eq 'IPTCCharset') { }
59 5628 elsif ($param eq 'UserParam') { }
102 5526 elsif ($param eq 'RequestTags') { }
118 5408 elsif ($param =~ /^(IgnoreTags|IgnoreGroups)$/) { }
12 5396 elsif ($param eq 'ListJoin') { }
78 5318 elsif ($param eq 'List') { }
1 5317 elsif ($param eq 'Compact' or $param eq 'XMPShorthand') { }
59 5258 elsif ($param eq 'NoWarning') { }
59 5199 elsif ($param eq 'ImageHashType') { }
59 5140 elsif ($param eq 'StructFormat') { }
59 5081 elsif ($param eq 'ByteUnit') { }
0 5081 elsif ($param eq 'Plot') { }
118 4963 elsif ($param eq 'KeepUTCTime' or $param eq 'SystemTimeRes') { }
0 4963 elsif (lc $param eq 'geodir') { }
2441 0 78 unless defined $newVal
2442 59 19 if ($newVal eq $Image::ExifTool::defaultLang) { }
2448 19 0 if ($langs{$newVal} and eval "require Image::ExifTool::Lang::$newVal")
2451 19 0 if (%$xlat)
2460 7 1 if (ref $newVal eq 'ARRAY') { }
2469 245 119 if ($newVal) { }
119 0 elsif ($param eq 'CharsetEXIF' or $param eq 'CharsetFileName' or $param eq 'CharsetRIFF') { }
0 0 elsif ($param eq 'CharsetQuickTime') { }
2471 245 0 if ($charset) { }
2474 1 244 if $param eq "IPTCCharset"
2487 0 59 unless defined $newVal
2490 59 0 if (ref $newVal eq "HASH")
2503 0 0 if ($newVal =~ /(.*?)=(.*)/s) { }
2506 0 0 if $paramName =~ s/\^$//
2515 0 0 if (defined $newVal)
2516 0 0 if (length $newVal or $force) { }
2524 0 0 unless $param =~ s/#$//
2528 43 59 if (defined $newVal) { }
2530 43 0 ref $newVal eq 'ARRAY' ? :
2533 43 0 unless $options->{$param}
2535 0 65 unless /^(.*:)?([-\w?*]*)#?$/
2536 65 0 if $2
2537 65 0 unless $1
2545 0 118 if (defined $newVal) { }
2546 0 0 if ref $newVal eq "HASH"
2548 0 0 ref $newVal eq 'ARRAY' ? :
2549 0 0 if $param eq "IgnoreTags"
2551 0 0 unless $options->{$param}
2553 0 0 unless /^(.*:)?([-\w?*]+)#?$/
2562 4 8 if (defined $newVal) { }
2572 78 0 $newVal ? :
2578 0 2 if ref $newVal eq "HASH"
2579 1 1 $param eq $p ? :
2580 1 1 if (defined $val)
2582 0 1 $p eq 'Compact' ? :
2584 0 1 unless my $set = $$opt{lc $_}
2585 1 0 unless ref $set
2595 0 59 if (defined $newVal)
2598 0 0 if $@
2600 0 59 if ($Image::ExifTool::evalWarning)
2605 0 59 if ($plus and defined $oldVal)
2606 0 0 defined $newVal ? :
2610 0 59 if (not defined $newVal) { }
59 0 elsif ($newVal =~ /^(MD5|SHA256|SHA512)$/i) { }
2618 0 59 if (defined $newVal)
2619 0 0 unless $newVal =~ /^(JSON|JSONQ)$/i
2624 59 0 if (defined $newVal) { }
2626 0 0 $newVal =~ /^I|B/i ? :
59 0 $newVal =~ /^S|M/i ? :
2627 0 59 unless $goodVal
2634 0 0 if defined $oldVal and defined $newVal
2641 65 4898 if ($param eq 'Escape') { }
60 4838 elsif ($param eq 'GlobalTimeShift') { }
0 4838 elsif ($param eq 'TimeZone' and defined $newVal and length $newVal) { }
60 4778 elsif ($param eq 'Validate') { }
2643 0 65 if (defined $newVal and $newVal eq 'XML') { }
5 60 elsif (defined $newVal and $newVal eq 'HTML') { }
2658 0 0 if ($^O eq 'MSWin32') { }
2659 0 0 if (eval { do { require Time::Piece } }) { }
2669 1 59 if $newVal
2690 0 508 if $^O eq "MSWin32" and eval { do { require Win32::API } }
2697 0 508 if (%Image::ExifTool::UserDefined::Options)
2722 2 550 if (ref $_[1] eq 'HASH' and $_[1]{'ReEntry'} and ref $_[0] eq 'SCALAR' || ref $_[0] eq 'GLOB') { }
2739 1 538 if (defined $_[0] or $options->{'HtmlDump'} or $req->{'validate'})
2743 0 12 if $options->{'HtmlDump'}
2745 1 11 if $req->{'validate'}
2746 11 1 if (defined $_[0])
2755 0 550 if ($self->Options("PrintCSV"))
2768 61 489 if $req->{'now'} or $reqAll
2769 61 489 if $req->{'newguid'} or $reqAll
2771 61 489 if $req->{'filesequence'} or $reqAll
2773 61 489 if ($req->{'processingtime'} or $reqAll)
2775 0 0 if (not @startTime and $req->{'processingtime'})
2781 0 550 if ($req->{'imagedatahash'} and not $self->{'ImageDataHash'})
2783 0 0 if ($imageHashType =~ /^SHA(256|512)$/i) { }
0 0 elsif (require Digest::MD5) { }
2784 0 0 if (require Digest::SHA) { }
2804 505 47 unless ($raf)
2806 505 0 if (defined $filename and $filename ne '') { }
2807 505 0 unless ($filename eq "-")
2809 0 505 if $realname =~ /\|$/
2812 61 444 if ($req->{'basename'} or $reqAll and not $self->{'EXCL_TAG_LOOKUP'}{'basename'})
2815 61 0 $name =~ /(.*)\./ ? :
2817 505 0 if defined $dir and length $dir
2818 61 444 if ($req->{'filepath'} or $reqAll and not $self->{'EXCL_TAG_LOOKUP'}{'filepath'})
2823 0 61 if ($^O eq 'MSWin32' and $options->{'WindowsLongPath'}) { }
61 0 elsif (eval { do { require Cwd } }) { }
2828 61 0 if (defined $path) { }
0 0 elsif ($req->{'filepath'}) { }
2829 0 61 if $^O eq "MSWin32"
2836 0 505 if $^O eq "darwin" and not $self->{'IN_RESOURCE'}
2838 0 505 if ($^O eq "MSWin32" and eval { do { require Win32API::File } })
2841 0 0 if ($self->EncodeFileName($zfile)) { }
2846 0 0 unless $wattr == Win32API::File::INVALID_FILE_ATTRIBUTES()
2850 505 0 if ($self->Open(\*EXIFTOOL_FILE, $filename)) { }
0 0 elsif ($self->IsDirectory($filename)) { }
2855 0 505 if $filename eq "-" or $filename =~ /\|$/
2862 0 0 if $self->{'ALT_EXIFTOOL'}
2871 2 550 if ($reEntry) { }
0 550 elsif (not $raf) { }
25 525 elsif (not $raf->{'FILE_PT'}) { }
525 0 elsif (-f $raf->{'FILE_PT'}) { }
2883 0 525 if $^O eq "MSWin32"
2888 0 0 if -p $raf->{'FILE_PT'}
2891 525 27 if defined $stat[7]
2892 0 552 if $rsize
2893 0 552 if $zid
2894 525 27 if defined $stat[9]
2895 525 27 if defined $stat[8]
2896 0 552 $^O eq 'MSWin32' ? :
2897 525 27 if defined $stat[10]
2898 0 552 if ($^O eq "linux" and @stat and eval { do { require File::StatX } })
2901 0 0 if ($raf) { }
2906 0 0 if $stat and $stat->btime
2908 525 27 if defined $stat[2]
2910 525 27 if (@stat)
2912 61 464 if ($sys or $req->{'fileattributes'})
2915 0 0 if ($^O eq "MSWin32" and defined $filename and $filename ne "" and $filename ne "-")
2917 0 0 if (eval { do { require Win32API::File } })
2920 0 0 if ($self->EncodeFileName($file)) { }
2925 0 0 if defined $wattr and $wattr != 4294967295
2930 61 464 if $sys or $req->{'filedevicenumber'}
2931 61 464 if $sys or $req->{'fileinodenumber'}
2932 61 464 if $sys or $req->{'filehardlinks'}
2933 61 464 if $sys or $req->{'fileuserid'}
2934 61 464 if $sys or $req->{'filegroupid'}
2935 61 464 if $sys or $req->{'filedeviceid'}
2936 61 464 if $sys or $req->{'fileblocksize'}
2937 61 464 if $sys or $req->{'fileblockcount'}
2940 0 0 if ($^O eq "darwin" and defined $filename and $filename ne "" and defined $fileSize)
2945 0 0 if ($crDate or $mdItem or $xattr)
2947 0 0 if $crDate
2948 0 0 if $mdItem and $plainFile
2949 0 0 if $xattr
2953 0 552 if ($isDir or defined $stat[2] and ($stat[2] & 61440) == 16384)
2957 0 0 if $raf
2958 0 0 if %saveOptions
2959 0 0 unless $reEntry
2967 0 312 if defined $ext and not defined $Image::ExifTool::magicNumber{$ext} and defined $moduleName{$ext} and not $moduleName{$ext}
2969 0 552 if ($fast >= 4)
2970 0 0 if (@fileTypeList) { }
2979 502 50 if (@fileTypeList) { }
2984 501 1 unless ($fast == 3)
3001 549 3 if ($raf->Read($buff, $Image::ExifTool::testLen)) { }
3002 0 549 unless $raf->Seek($pos, 0)
3010 2377 6 if ($type) { }
3 3 elsif (not defined $type) { }
0 3 elsif ($recognizedExt) { }
3011 2301 76 if ($Image::ExifTool::magicNumber{$type}) { }
3013 1745 2 unless $buff =~ /^$Image::ExifTool::magicNumber{$type}/s or $noMagic{$type}
3016 0 76 if defined $moduleName{$type} and not $moduleName{$type}
3017 0 76 if $fast > 2
3019 0 632 if $weakMagic{$type} and defined $recognizedExt
3026 3 0 unless $buff =~ /(\xff\xd8\xff|MM\0\x2a|II\x2a\0)/g
3027 0 0 $1 eq "\377\330\377" ? :
3030 0 0 unless $raf->Seek($pos + $skip, 0)
3032 0 0 unless $self->{'DOC_NUM'}
3036 25 607 $type eq 'TIFF' ? :
3038 0 632 if ($fast > 2 and not $processType{$type})
3039 0 0 unless ($weakMagic{$type} and !$ext || $ext ne $type)
3045 205 427 unless defined $module
3049 362 270 if ($module) { }
0 270 elsif ($module eq '0') { }
3066 549 83 if ($result)
3067 0 549 if ($unkHeader)
3076 0 83 unless $raf->Seek($pos, 0)
3078 3 0 unless ($err or defined $type or $self->{'DOC_NUM'})
3083 3 0 if (not length $buff) { }
3087 0 0 if (length $buff < 16 or $buff =~ /[^\Q$ch\E]/) { }
3088 0 0 if ($fileType eq 'RAW') { }
0 0 elsif ($fileType) { }
3097 0 0 if ($self->{'OPTIONS'}{'FastScan'}) { }
3102 0 0 unless $raf->Read($buff, 65536)
3103 0 0 if $buff =~ /[^\Q$ch\E]/g
3106 0 0 if ($num) { }
3112 0 0 if ($ch eq "\000") { }
0 0 elsif ($ch eq ' ') { }
0 0 elsif ($ch =~ /[a-zA-Z0-9]/) { }
3124 3 549 if ($err) { }
0 1098 elsif ($self->Options('ScanForXMP') and not defined $type && ($fast || $self->{'FoundXMP'})) { }
3132 0 0 if Image::ExifTool::XMP::ScanForXMP($self, $raf)
3135 37 218 if (defined $self->{'EXIF_DATA'} and length $self->{'EXIF_DATA'} > 16 and $req->{'exif'} || $self->{'TAGS_FROM_FILE'} && !$self->{'EXCL_TAG_LOOKUP'}{'exif'})
3142 550 2 unless ($reEntry)
3146 0 550 if ($self->{'HTML_DUMP'})
3150 0 0 unless defined $pos
3151 0 0 defined $self->{'EXIF_DATA'} ? :
3152 0 0 if defined $self->{'EXIF_POS'} and $pos != $self->{'EXIF_POS'}
3153 0 0 if $self->{'ExtendedEXIF'}
3156 0 0 $self->{'FILENAME'} ? :
3157 0 0 if $success < 0
3160 507 45 if ($filename)
3163 0 0 if ($rsize and $options->{'ExtractEmbedded'})
3165 0 0 if ($self->Open(\*RESOURCE_FILE, "$filename/..namedfork/rsrc")) { }
3181 61 491 if @startTime
3184 46 506 if (%{$self->{'WAS_WARNED'};})
3188 4 52 if $n and $n > 1
3193 12 540 if %saveOptions
3195 2 550 if ($reEntry) { }
3201 0 550 if ($self->{'Cleanup'})
3209 3 549 if not defined $type or exists $self->{'VALUE'}{'Error'}
3229 4 710 if ($self->{'InExtract'})
3233 175 539 unless (@_ and not defined $_[0])
3236 125 50 unless defined $self->{'FILENAME'}
3245 665 49 $self->{'OPTIONS'}{'PrintConv'} ? :
3248 1058 35277 unless defined $val
3253 4 710 if (@$byValue)
3262 9 16 unless defined $val
3266 16 0 unless (defined $self->{'VALUE'}{$vtag})
3272 14 2 unless $nonVal{$tag}
3281 427 287 if (%ignored)
3282 197 230 if (not @$reqTags) { }
42 188 elsif (@$wildTags) { }
3285 22456 526 unless $ignored{$_}
3293 231 161 if (@$wildTags and $i == $wildTags->[0]) { }
3295 231 0 unless $ignored{$_}
3306 10 704 if ($self->{'IO_TAG_LIST'})
3310 3 0 unless @$reqTags or $sort and $sort ne "Input"
3316 175 539 if %saveOptions
3317 4 710 if @saveMembers
3334 451 11 if (ref $info eq 'HASH') { }
11 0 elsif (ref $info eq 'ARRAY') { }
3342 462 0 if ($foundTags) { }
3346 24957 0 if defined $fileOrder->{$_}
3350 0 0 if $info and not $sort
3351 0 0 unless $foundTags = $self->{'FOUND_TAGS'} || $self->SetFoundTags
3353 16 446 unless $sort
3356 23 439 unless $sort and $sort ne "Input"
3358 0 439 if ($sort eq 'Tag' or $sort eq 'Alpha') { }
436 3 elsif ($sort =~ /^Group(\d*(:\d+)*)/) { }
0 3 elsif ($sort eq 'Descr') { }
3370 1557 22440 unless $num
3373 436 0 unless $sort2
3374 436 0 if ($sort2)
3375 0 436 if ($sort2 eq 'Tag' or $sort2 eq 'Alpha') { }
0 436 elsif ($sort2 eq 'Descr') { }
3376 0 0 unless $groupOrder{$a} <=> $groupOrder{$b}
3380 0 0 unless $groupOrder{$a} <=> $groupOrder{$b}
3384 0 36371 unless $groupOrder{$a} <=> $groupOrder{$b}
3403 0 1 unless my $foundTags = $self->{'FOUND_TAGS'} || $self->SetFoundTags
3435 0 54748 if ($tag =~ /^(.*):(.+)/)
3441 0 0 if defined $rawValue->{$key}
3442 0 0 if $i <= 0
3445 0 0 if (@keys)
3447 0 0 if $key
3451 54721 27 if ($type) { }
3452 0 54721 if $type eq "Rational"
3453 0 54721 if $type eq "Bin"
3455 27 0 $self->{'OPTIONS'}{'PrintConv'} ? :
3460 10496 44252 if (not defined $value) { }
3461 10302 194 unless ref $tag
3467 194 0 if ($type ne "Raw")
3469 170 24 unless $type eq "ValueConv"
3473 53 44199 if ($tagInfo->{'Struct'} and ref $value)
3479 48 5 unless ($type eq "Both")
3488 44199 0 if ($type ne "Raw")
3491 6716 37483 if ($both) { }
3492 2247 4469 if ($type eq 'PrintConv') { }
102 4367 elsif ($type eq 'ValueConv') { }
3496 43 59 unless defined $value
3502 35831 1652 unless $type eq "ValueConv"
3511 665 71894 if ref $value eq "SCALAR" and not $tagInfo->{'ConvertBinary'}
3513 46930 24964 unless (defined $conv)
3514 29793 17137 if ($convType eq 'ValueConv') { }
3515 29378 415 unless $tagInfo->{'Binary'}
3519 16930 207 unless defined($conv = $tagInfo->{'Table'}{'PRINT_CONV'})
3520 49 158 if exists $tagInfo->{$convType}
3524 2151 23386 if $type eq "Both" and $convType eq "PrintConv"
3527 125 25412 if (ref $conv eq "ARRAY")
3530 0 125 ref $value eq 'ARRAY' ? :
3534 7 118 if ($relist) { }
3538 7 7 if (ref $oldIndex) { }
3540 16 0 if defined $valList[$_]
3542 7 0 if @join
3546 12 2 if defined $newVal
3552 0 125 unless @$value
3555 157 25380 if (ref $value eq 'ARRAY') { }
3556 7 150 if (defined $tagInfo->{'RawJoin'}) { }
3568 25739 19 if (defined $conv) { }
3570 3020 22719 if (ref $val eq "HASH" and not @val)
3578 0 17620 unless defined $val->{$_}
3581 17235 385 if defined $val[$_] or not $tagInfo->{'Require'}{$_}
3582 0 385 if defined $oldFilter
3586 7 2628 if defined $oldFilter
3589 0 2635 ref $conv eq 'CODE' ? :
3591 7776 17578 if (ref $conv eq 'HASH') { }
3593 461 7315 unless (defined($value = $conv->{$val}))
3594 128 333 if ($conv->{'BITMASK'}) { }
3598 257 76 if ($conv->{'OTHER'})
3602 0 257 if $Image::ExifTool::evalWarning
3604 78 255 unless (defined $value)
3605 0 78 if ($tagInfo->{'PrintHex'} and defined $val and &IsInt($val) and $convType eq 'PrintConv') { }
3617 261 45 if ($self->{'CUR_LANG'} and $convType eq "PrintConv" and ref($tmp = $self->{'CUR_LANG'}{$tagInfo->{'Name'}}) eq "HASH" and $tmp = $tmp->{'PrintConv'})
3622 0 261 if ($conv->{'BITMASK'} and not defined $conv->{$val}) { }
213 48 elsif (defined($tmp = $tmp->{$value})) { }
3625 0 0 if defined $tmp->{$_}
3636 1278 16300 if (ref $conv eq 'CODE') { }
3641 0 16300 if $@
3643 0 17578 if $Image::ExifTool::evalWarning
3648 25002 371 unless $vals
3650 3 368 if (ref $value eq "SCALAR")
3655 371 0 if defined $value
3656 150 221 if (++$i >= scalar @$vals)
3657 150 0 if @values
3661 133 88 if ($convList)
3663 0 133 if ($nextConv and $nextConv eq 'REPEAT') { }
3671 576 24576 unless defined $value
3673 125 24451 if ($convList and ref $value eq "ARRAY")
3674 117 8 $convType eq 'PrintConv' ? :
3677 7806 35626 if ($type eq "Both")
3680 3439 4367 unless $both
3682 0 7806 if ($self->{'ESCAPE_PROC'}) { }
3914 3892 elsif (not defined $valueConv) { }
3684 0 0 if (defined $valueConv) { }
3698 163 35463 if $self->{'ESCAPE_PROC'}
3701 442 35184 if $self->{'OPTIONS'}{'Filter'} and $type eq "PrintConv"
3703 311 35315 if (ref $value eq "ARRAY")
3704 3 308 if (defined $self->{'OPTIONS'}{'ListItem'}) { }
1 307 elsif (wantarray) { }
170 163 elsif ($type eq 'PrintConv' and not $self->{'OPTIONS'}{'List'}) { }
3728 2 24008 unless $tagInfo and defined $tagInfo->{'TagID'}
3730 0 24008 if wantarray
3746 24010 0 if ($tagInfo)
3750 718 129 if ($desc) { }
3752 263 455 if ref $desc
3757 0 1 unless $tagInfo->{'LangCode'} and ($name = $tagInfo->{'Name'}) =~ s/-$tagInfo->{'LangCode'}$// and $desc = $self->{'CUR_LANG'}{$name}
3758 0 1 if ref $desc
3762 0 710 if $self->{'ESCAPE_PROC'}
3769 9894 13406 unless ($desc)
3772 9894 0 if $tagInfo
3792 129957 74807 if (ref $tag eq 'HASH') { }
3805 39174 165590 unless ($tagInfo->{'GotGroups'})
3808 33645 5529 unless $groups
3811 109805 7717 unless $groups->{$_}
3816 103316 101448 if (defined $family and $family ne '-1') { }
3817 2736 100580 if ($family =~ /[^\d]/) { }
3819 0 2736 unless @families
3820 2736 0 unless $family =~ /^:/
3823 0 2736 if @families == 1 and $families[0] != 7
3825 69797 30783 if $family == 0 or $family == 2
3829 380 101068 unless wantarray
3833 5527 129060 $tag =~ /\((\d+)\)$/ && $1 ne '0' ? :
3835 48513 86074 unless ($byTagInfo)
3836 330 48183 if $ex->{'G0'}
3837 384 17609 $ex->{'G1'} =~ /^\+(.*)/ ? :
17993 30520 if $ex->{'G1'}
3838 1357 47156 if $ex->{'G3'}
3839 255 48258 if defined $ex->{'G5'}
3840 0 48513 if (defined $ex->{'G6'})
3841 0 0 unless defined $groups[5]
3844 16 48497 if ($ex->{'G8'})
3849 48513 0 unless ($noID)
3851 2 48511 if (not defined $id) { }
30259 18252 elsif ($id =~ /^\d+$/) { }
3854 0 30259 if $self->{'OPTIONS'}{'HexTagIDs'}
3862 49269 85318 if ($family)
3863 30783 18486 if $family > 0
3867 42 18444 if ($groups[1] =~ /^MIE(\d*)-(.+?)(\d*)$/)
3869 0 42 $1 ? :
3870 0 42 $3 ? :
3871 0 42 $1 ? :
0 42 $3 ? :
3874 2736 101068 if (@families)
3879 0 5472 unless ($grp)
3880 0 0 if $simplify
3883 5456 16 unless $simplify and @grps and $grp eq $grps[-1]
3886 0 2736 if $simplify and @grps > 1 and $grps[0] eq "Main"
3907 2 1 if (ref $info ne 'HASH') { }
3913 0 3 unless defined $family
3932 0 508 unless @groups
3969 44355 3246 unless $Image::ExifTool::specialTags{$_}
3973 3246 44355 if $Image::ExifTool::specialTags{$tag}
3975 263 44092 unless $tagInfo
3989 9508 93497 unless ($reqTag)
3991 0 9508 if $index == 0
3994 304 93193 if ($subDoc) { }
29587 63606 elsif ($reqTag =~ /^(.*):(.+)/) { }
5241 116730 elsif ($notBuilt{$reqTag} and not $inhibit->{$index}) { }
3999 0 304 $reqTag =~ s/\b(Main|Doc(\d+)):// ? :
4003 304 0 unless ($cacheTag)
4006 304 0 if $reqTag =~ s/^(.*)://
4010 0 304 if defined $rawValue->{$key}
4011 304 0 if $i <= 0
4014 304 0 if defined $reqGroup
4023 2238 699 if ($reqGroup eq "Composite" and $notBuilt{$name})
4026 1767 471 unless ($inhibit->{$index} and $allBuilt)
4034 2 1 if ($reqTag =~ /\b(File\d+):/i and $self->{'ALT_EXIFTOOL'}{$1})
4042 4056 24470 if defined $et->{'VALUE'}{$key}
4043 27820 706 if $i <= 0
4047 2 27818 if $altFile
4057 17030 69459 if (defined $rawValue->{$reqTag}) { }
27505 41954 elsif ($require->{$index}) { }
4058 71 16959 if ($inhibit->{$index}) { }
4071 73 37011 if $requireAlt xor $altOnly
4072 0 37011 if ($docNum) { }
5513 31498 elsif ($found) { }
3965 27533 elsif (not defined $found) { }
4073 0 0 if ($found)
4077 0 0 unless $compKeys->{$_}
4083 0 0 if ++$docNum <= $self->{'DOC_COUNT'}
4092 19488 4867 unless $compositeID{$tagKey{$_}}
4096 6589 17766 unless $compKeys->{$_}
4104 36803 208 unless $subDoc
4107 176 32 if (%$require) { }
4111 176 0 unless defined $rawValue->{$reqTag}
4115 32 0 ref $tagInfo->{'SubDoc'} ? :
4118 0 64 unless my $desTag = $desire->{$_}
4120 0 64 if defined $rawValue->{$desTag}
4122 32 0 unless $docNum
4126 541 1822 unless @deferredTags
4127 471 1351 if (@deferredTags == @tagList)
4128 0 471 if ($allBuilt)
4148 0 11 unless $compositeID{$tag}
4195 0 1010 unless (defined $file)
4197 0 0 if (defined $desc and $desc eq '0') { }
4204 0 0 unless defined $module
4205 0 0 unless defined $module and $module eq 0
4212 73 937 unless ($fileExt)
4213 0 73 if ($file =~ s/ \((.*)\)$//)
4217 73 0 unless $fileExt
4219 962 48 if $fileExt
4223 0 1010 if ($desc) { }
955 55 elsif ($fileType and !defined($desc) || $desc ne '0') { }
4224 0 0 if ($fileType) { }
4225 0 0 if ($Image::ExifTool::static_vars{'OverrideFileDescription'} and $Image::ExifTool::static_vars{'OverrideFileDescription'}{$fileExt}) { }
4233 0 0 if $subType
4238 0 955 if defined $mod and $mod eq 0
4240 55 955 unless $fileType
4242 716 239 if (wantarray) { }
239 0 elsif ($fileType) { }
4243 4 712 if ref $fileType eq "ARRAY"
4245 0 239 if ref $fileType eq "ARRAY"
4258 0 0 unless my $file = shift()
4259 0 0 unless my($type) = &GetFileType($file)
4260 0 0 if ($Image::ExifTool::noWriteFile{$type})
4263 0 0 grep(/^$ext$/, @{$Image::ExifTool::noWriteFile{$type};}) ? :
0 0 if $ext
4265 0 0 if ($onlyWriteFile{$type})
4267 0 0 grep(/^$ext$/, @{$onlyWriteFile{$type};}) ? :
0 0 if $ext
4269 0 0 unless (%writeTypes)
4282 0 24 unless my $file = shift()
4284 0 24 unless my $type = &GetFileType($file)
4285 24 0 if $createTypes{$ext} or $createTypes{$type}
4296 111 246 $hash->{'_ordered_keys_'} ? :
4353 0 818 if ($self->Options("HtmlDump"))
4358 0 818 unless ref $self->{'OPTIONS'}{'TextOut'}
4368 0 0 if (@purgeTags and length scalar @purgeTags >= $purgeFlag)
4370 0 0 unless defined $_->{'IsProtobuf'}
4387 0 2 if ($self->{'OPTIONS'}{'Duplicates'}) { }
4397 14 252 if $haveInfo{$tagName}
4422 0 550 if ($self->{'ImageDataHash'})
4425 0 0 unless $digest eq "d41d8cd98f00b204e9800998ecf8427e" or $digest eq "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" or $digest eq "cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e"
4431 1 549 if ($opts->{'Validate'})
4435 4 546 if ($opts->{'Geolocation'})
4440 0 8 if lc $arg eq "both"
4441 8 0 unless $arg =~ s/^\$//
4444 4 0 unless (@tags)
4457 69 7 unless defined $val
4459 0 7 if ($tag =~ /Coordinates/)
4460 0 0 if defined $coord[0] and defined $coord[1]
4464 2 3 $tag =~ /Longitude/ ? :
2 5 $tag =~ /Latitude/ ? :
4465 4 3 if (defined $n)
4466 2 2 if ($tag =~ /Ref$/) { }
4467 2 0 unless $ref[$n]
4469 2 0 unless defined $coord[$n]
4474 1 2 if ($tag =~ /City/) { }
2 0 elsif (@city) { }
4475 0 1 if @city
4478 2 0 unless $doneCity
4479 0 2 if $doneCity
4482 1 3 if (defined $coord[0] and defined $coord[1]) { }
0 3 elsif (@city) { }
4483 0 1 if $ref[0] and $coord[0] > 0 and $ref[0] eq "S"
4484 1 0 if $ref[1] and $coord[1] > 0 and $ref[1] eq "W"
4489 3 1 unless (defined $arg)
4492 0 3 if $arg eq 1
4495 4 0 if ($arg)
4496 3 1 if $both
4499 0 4 if ($opts->{'Verbose'})
4500 0 0 if ($Image::ExifTool::Geolocation::dbInfo) { }
4512 4 0 if ($cities and @$cities < 2 || $dist || !$self->Warn('Multiple Geolocation cities are possible', 2)) { }
0 0 elsif ($Image::ExifTool::evalWarning) { }
4513 1 3 if @$cities > 1
4516 1 4 unless $city eq $cities->[0]
4519 5 0 if $geo[1]
4520 5 0 if $geo[2]
4522 5 0 if $geo[4]
4523 5 0 if $geo[5]
4525 4 1 if $geo[10]
4528 4 1 if ($dist)
4533 0 5 unless $opts->{'Duplicates'}
4542 0 550 if (%{$opts->{'UserParam'};})
4546 0 0 unless /#$/
4547 0 0 if ($doMsg)
4554 540 0 if ($opts->{'Composite'} and !$opts->{'FastScan'} || $opts->{'FastScan'} < 5)
4560 2 6 if $altExifTool->{'DID_EXTRACT'}
4568 0 6 if ($fileName =~ /\$/)
4571 0 0 unless defined $fileName
4575 0 6 if $err
4583 1 549 if $self->{'DoAltComposite'}
4593 0 0 unless my $tagInfo = $self->{'TAG_INFO'}{$tag}
4604 0 0 unless my $tagInfo = $self->{'TAG_INFO'}{$tag}
4618 72 72 $i ? :
4619 2 142 unless defined $value->{$key}
4620 70 72 if ($et->GetGroup($key, 1) eq $grp)
4637 0 23 $tag =~ s/ \((\d+)\)$// ? :
4639 0 23 if defined $self->{'VALUE'}{$tag}
4654 69 56 unless $$strPt =~ /([\x80-\xff])/g
4661 45 153 if $ch < 194 or $ch >= 248
4664 75 78 if ($ch < 224) { }
78 0 elsif ($ch < 240) { }
4675 1 152 unless ($$strPt =~ /\G([\x80-\xbf]{$n})/g)
4676 0 1 if $trunc and $pos + $n > length $$strPt
4680 77 75 if ($n == 2) { }
4681 0 1 if $ch == 224 and (ord $1 & 224) == 128 or $ch == 237 and (ord $1 & 224) == 160 or $ch == 239 and ord $1 == 191 and (ord substr($1, 1) & 254) == 190
4686 0 75 if $ch == 240 and (ord $1 & 240) == 128 or $ch == 244 and ord $1 > 143 or $ch > 244
4689 10 142 unless $$strPt =~ /([\x80-\xff])/g
4702 505 0 if (eval { do { require File::Basename } }) { }
4708 0 0 if ($name =~ s[(.*)/][]) { }
4709 0 0 length $1 ? :
4726 0 1198 if $file eq "-"
4729 0 1198 if ($file =~ /[\x80-\xff]/)
4731 0 0 if (not $enc and $^O eq "MSWin32")
4732 0 0 if (&IsUTF8(\$file) < 0) { }
4733 0 0 unless defined $enc
4740 0 1198 if ($hasSpecialChars or $force or $self->{'OPTIONS'}{'WindowsLongPath'} or $self->{'OPTIONS'}{'WindowsWideFile'})
4741 0 0 unless $enc
4742 0 0 if ($^O eq 'MSWin32') { }
0 0 elsif ($enc ne 'UTF8') { }
4744 0 0 if (eval { do { require Win32API::File } })
4745 0 0 if $self->{'OPTIONS'}{'WindowsLongPath'}
4785 0 0 if ($path =~ s/(_original|_exiftool_tmp|:Zone\.Identifier)$//)
4787 0 0 if (not length $path or $path =~ m([:./\\]$))
4793 0 0 if defined $self->{'LONG_PATH_IN'} and $self->{'LONG_PATH_IN'} eq $path
4795 0 0 if $debug
4799 0 0 if $longPath =~ /^\\\\\?\\/
4801 0 0 unless ($k32GetFullPathName)
4802 0 0 if defined $k32GetFullPathName
4803 0 0 unless (eval { do { require Win32::API } })
4808 0 0 unless ($k32GetFullPathName)
4821 0 0 if length $longPath <= 247 - length($suffix)
4823 0 0 if ($longPath =~ /^\\\\/) { }
4834 0 0 if $debug
4851 0 730 $file =~ /\|$/ && $self->{'TRUST_PIPE'} ? :
730 230 unless $mode
4853 960 0 if ($mode)
4854 0 960 if ($self->EncodeFileName($file)) { }
4858 0 0 if ($mode eq '>' or $mode eq '>>') { }
4861 0 0 if ($mode eq '>>') { }
4871 0 0 if $mode eq "+<"
4877 0 0 unless ($access & Win32API::File::GENERIC_WRITE())
4882 0 0 unless $wh
4884 0 0 if (not defined $fd or $fd < 0)
4906 0 231 if ($self->EncodeFileName($file)) { }
231 0 elsif ($writing) { }
4912 0 0 unless $wh
4931 0 1 if ($et->EncodeFileName($file)) { }
4935 0 0 if $attrs and $attrs != 4294967295 and $attrs & $dirBit
4953 0 1 if ($dir and not $self->IsDirectory($dir))
4958 0 0 if (length $_ and not $self->IsDirectory($dir) and not &IsPC() && $dir =~ m[^//[^/]*$])
4965 0 0 if ($self->EncodeFileName($d2)) { }
4967 0 0 unless (defined $k32CreateDir)
4968 0 0 unless (eval { do { require Win32::API } })
4973 0 0 unless ($k32CreateDir)
4979 0 0 if $k32CreateDir
4983 0 0 unless $success
5002 0 0 unless (ref $file)
5004 0 0 unless ($self->Open(\*FH, $file))
5005 0 0 if ($self->IsDirectory($file))
5007 0 0 if defined $rtn[0]
5015 0 0 if ($^O eq "MSWin32")
5016 0 0 if (not eval { do { require Win32::API } }) { }
0 0 elsif (not eval { do { require Win32API::File } }) { }
5023 0 0 unless ($win32Handle)
5030 0 0 unless ($k32GetFileTime)
5031 0 0 if defined $k32GetFileTime
5033 0 0 unless ($k32GetFileTime)
5039 0 0 unless ($k32GetFileTime->Call($win32Handle, $ctime, $atime, $mtime))
5069 719 6 unless $self->{'ReqTagAlreadySet'}
5077 171 1420 if (ref $arg and not overload::Method($arg, '""')) { }
915 505 elsif (defined $self->{'FILENAME'}) { }
5078 10 161 if (ref $arg eq 'ARRAY') { }
116 45 elsif (ref $arg eq 'HASH') { }
26 19 elsif (ref $arg eq 'SCALAR' or UNIVERSAL::isa($arg, 'GLOB')) { }
19 0 elsif (UNIVERSAL::isa($arg, 'File::RandomAccess')) { }
5081 2 89 if (/^-(.*)/) { }
5091 28 161 if (@oldGroupOpts and $opt =~ /^Group/)
5098 0 189 if $opt eq "Exclude"
5101 0 26 if defined $self->{'RAF'}
5104 0 25 if (ref $arg eq "SCALAR" and $] >= "5.006" and $self->{'OPTIONS'}{'EncodeHangs'} || eval { do { require Encode; &Encode::is_utf8($$arg) } } || $@)
5109 0 0 $] < 5.01 ? :
0 0 $self->{'OPTIONS'}{'EncodeHangs'} || $@ ? :
5124 58 857 if ($arg =~ /^-(.*)/) { }
5134 46 679 if ($options->{'RequestTags'})
5138 367 358 if (@{$self->{'REQUESTED_TAGS'};})
5142 0 989 unless /^(.*:)?([-\w?*]*)#?$/
5143 989 0 if $2
5144 734 255 unless $1
5148 45 680 if (@exclude or $wasExcludeOpt)
5150 1 44 if $options->{'Exclude'}
5156 52 673 if ($options->{'Exclude'})
5158 68 1 if /([-\w]+)#?$/
5159 0 69 if (/(xmp-.*:[-\w]+)#?/i)
5160 0 0 unless $self->{'EXCL_XMP_LOOKUP'}
5165 7 45 if $self->{'TAGS_FROM_FILE'}
5177 1 1 if $grp eq $id
5178 0 1 if ($id =~ /^\d+$/) { }
5179 0 0 if $grp =~ s/^0x0*// and $grp eq sprintf("%x", $id)
5182 0 1 if $tmp =~ s/([^-_A-Za-z0-9])/sprintf "%.2x", ord $1;/eg and $grp eq $tmp
5184 1 0 unless $id =~ s/-.*//
5198 0 28417 unless ref $tagList
5204 29008 0 if ($grps[$g] =~ s/^(\d*)(id-)?//i)
5205 2 29006 if length $1
5206 0 29008 if ($2)
5212 0 29008 if $grps[$g] eq "copy0"
5218 0 18951 if $grp eq "*" or $grp eq "all"
5220 3 18948 if (defined($f = $fmys[$g])) { }
5221 0 3 unless defined $groups[$f]
5222 0 3 if ($f == 7) { }
5223 0 0 if &IsSameID(scalar $self->GetTagID($tag), $grp)
5225 2 1 if $grp eq lc $groups[$f]
5229 13756 5192 unless grep /^$grp$/i, @groups
5232 4729 13757 if ($g == @grps)
5233 2162 2567 unless wantarray
5237 597 25658 wantarray ? :
5251 6 67 if (@$list1 or @$list2) { }
5255 150 79 if ($exclude->{$tag} xor $inv) { }
5257 1 8 $_ == $i ? :
3 9 if ($_ < $i) { }
5258 150 1102 $_ == $i ? :
6959 1252 if ($_ < $i) { }
5265 3181 3769 unless $exclude->{$_} xor $inv
5279 0 8 unless $g8 =~ /(\d+)/
5280 0 8 unless my $et = $self->{'ALT_EXIFTOOL'}{$g8}
5284 8 1 unless (defined $self->{'VALUE'}{$vtag})
5317 367 353 if (@$reqTags) { }
5318 367 0 unless $rtnTags
5325 255 734 if ($reqTag =~ /^(.*):(.+)/) { }
5327 0 255 if ($group =~ /^(\*|all)$/i) { }
6 249 elsif ($reqTag =~ /\bfile(\d+):/i) { }
0 249 elsif (not $group =~ /^[-\w:]*$/) { }
5341 15 0 if $tag =~ s/#$// and $options->{'PrintConv'}
5342 6 983 if (defined $tagHash->{$reqTag} and not $doDups) { }
164 819 elsif ($tag =~ /^(\*|all)$/i) { }
9 810 elsif ($tag =~ /[*?]/) { }
748 62 elsif ($doDups or defined $group) { }
62 0 elsif ($tag =~ /^[-\w]+$/) { }
5346 163 1 if ($doDups or $allGrp) { }
5351 0 164 unless @matches
5358 9 0 if $doDups or $allGrp
5360 0 9 unless @matches
5371 62 0 unless defined $matches[0]
5375 255 734 if (defined $group and not $allGrp)
5378 20 235 unless @matches or not $allTag
5380 162 807 if (@matches > 1) { }
532 275 elsif (not @matches) { }
5384 0 1 unless ($doDups or $allTag or $allGrp)
5389 0 0 unless defined $priority
5390 0 0 unless $priority >= $oldPriority
5398 9 523 $byValue ? :
5403 6 963 if ($g8)
5410 15 954 if $byValue
5412 153 816 if $allTag
5418 353 0 if ($doDups) { }
5429 45 27 if ($exclude)
5433 34 27 if ($pat =~ /^(.*):(.+)/) { }
5435 0 34 if ($group =~ /^(\*|all)$/i) { }
0 34 elsif (not $group =~ /^[-\w:]*$/) { }
5445 34 27 if ($tag =~ /^(\*|all)$/i) { }
5453 34 27 if $group and @matches
5456 45 0 if (%exclude)
5459 0 45 unless @$rtnTags
5461 44 1 if $duplicates and not @groupOptions
5469 0 29 unless $groupOpt =~ /^Group(\d*(:\d+)*)/
5471 29 0 unless $wantGroup{$family}
5473 4 25 if (ref $options->{$groupOpt} eq 'ARRAY') { }
5482 2 31 if (/^-(.*)/) { }
5501 3464 1212 unless defined $wanted
5502 177 1035 unless $wanted
5504 0 1035 if $wantTag and $wantTag < $wanted
5507 3281 1047 unless $wantTag
5508 382 665 if $duplicates
5512 28 637 if (defined $bestTag)
5513 14 14 if $wantTag > $keepTags{$bestTag}
5514 0 14 if ($wantTag == $keepTags{$bestTag})
5516 0 0 if ($tag =~ / \((\d+)\)$/)
5518 0 0 if not $bestTag =~ / \((\d+)\)$/ or $1 > $tagNum
5534 714 6 wantarray ? :
5547 508 255 if $callInfo[$#callInfo] eq "DESTROY"
5548 193 62 if (@callInfo == 4) { }
1 61 elsif ($callInfo[-1] eq 'ShiftTime') { }
5558 0 255 unless eval { do { require $file } }
5559 0 255 unless (defined &$autoload)
5582 0 0 unless $self->{'Cleanup'}
5599 1 39 if ($ignorable & 4)
5601 0 1 unless $ignorable &= 3
5604 1 39 if $self->{'OPTIONS'}{'IgnoreMinorErrors'}
5605 0 1 if $ignorable eq 3 and $self->{'OPTIONS'}{'Validate'}
5606 0 39 if defined $noWarn and eval { do { $str =~ /$noWarn/ } }
5607 2 37 $ignorable eq '2' ? :
5610 94 0 unless (defined $noWarn and eval { do { $str =~ /$noWarn/ } })
5612 10 84 if ($self->{'WAS_WARNED'}{$str}) { }
5613 10 0 unless $noCount
5629 0 4 if ($self->{'DemoteErrors'}) { }
1 3 elsif ($ignorable) { }
5630 0 0 if $self->Warn($str)
5633 1 0 if $self->{'OPTIONS'}{'IgnoreMinorErrors'}
5648 0 528 unless $tagList and @$tagList
5653 60 468 $removeSuffix ? :
5658 1 1173 if (ref $entry)
5666 31 1142 if (not $excl and $tag =~ /(.+?)([-+]?[<>].+)/s) { }
5668 23 8 if ($post =~ /^[-+]?>/ or not $post =~ /\$/)
5671 6 17 unless defined $p2
5672 0 23 $t2 =~ s/#$// ? :
5674 0 23 if ($match)
5676 0 0 if /^-/
5677 0 0 if ($p2 and /(.+:)(.+)/) { }
5683 0 0 unless @post
5691 328 845 if ($tag =~ /(.+:)(.+)/) { }
5696 4 1169 $tag =~ s/#$// ? :
5701 17 1156 if ($match) { }
5702 0 17 if ($excl) { }
1 16 elsif (length $pre or length $post or $v) { }
5705 0 0 if /^-/
5707 0 0 if ($pre and /(.+:)(.+)/) { }
5716 0 12 if ($2) { }
5729 1173 0 unless @post
5745 0 637 if (ref $add) { }
5759 525 112 if ($defaultGroups) { }
5760 524 1 unless $defaultGroups->{'0'}
5761 521 4 unless $defaultGroups->{'1'}
5762 0 525 unless $defaultGroups->{'2'}
5768 640 5661 if $Image::ExifTool::specialTags{$tagID}
5771 1233 4428 if $tagInfo->{'Writable'}
5772 0 5661 if $override and not defined $tagInfo->{'Override'}
5775 364 5297 if ($compositeID{$tagID})
5779 0 364 if $over < 0
5780 0 364 if ($over)
5790 0 0 if $n++
5794 5661 0 unless $tagID eq $new
5797 5297 364 unless $compositeID{$tagID}
5803 9499 7484 unless my $req = $tagInfo->{$type}
5804 6472 1012 ref $req eq 'HASH' ? :
5806 1012 4649 if (@scalars)
5825 2488 3173 unless $groups
5828 12680 4303 unless $groups->{$_}
5841 0 1 if (defined &Image::ExifTool::TagLookup::AddTags) { }
1 0 elsif (not $Image::ExifTool::pluginTags{$tagHash}) { }
5859 2621 2428 if (ref $flags eq 'ARRAY') { }
0 2428 elsif (ref $flags eq 'HASH') { }
5890 38945 220096 unless $tagInfo->{'Name'}
5891 4989 254052 if $tagInfo->{'Flags'}
5892 9508 249533 if defined $avoid
5894 3091 255950 if ($tagInfo->{'Mask'} and not defined $tagInfo->{'BitShift'})
5900 232123 3933 unless @infoArray > 1
5925 5710 2519 if $_[0] =~ /^[+-]?(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?$/
5927 2519 0 unless $_[0] =~ /^[+-]?(?=\d|,\d)\d*(,\d*)?([Ee]([+-]?\d+))?$/
5950 6726 4030 unless defined $_
5952 4023 7 /((?:[+-]?)(?=\d|\.\d)\d*(?:\.\d*)?(?:[Ee](?:[+-]?\d+))?)/ ? :
5977 1154 212 unless $Image::ExifTool::swapBytes
5986 1302 0 unless $Image::ExifTool::swapWords and length $_[0] == 8
5998 158515 4853 if $_[2]
6005 12 0 if $_[2]
6014 7720 24016 if $_[2]
6021 0 0 if $_[2]
6033 5448 22521 if ($Image::ExifTool::swapBytes) { }
6039 0 27969 unless defined $val
6050 0 1236 unless defined $val
6073 0 0 $ratNumer ? :
0 12 unless $ratDenom = &Get16s($dataPt, $pos + 2)
6081 0 0 $ratNumer ? :
0 12 unless $ratDenom = &Get16u($dataPt, $pos + 2)
6088 0 0 $ratNumer ? :
0 690 unless $ratDenom = &Get32s($dataPt, $pos + 4)
6095 0 32 $ratNumer ? :
32 2808 unless $ratDenom = &Get32u($dataPt, $pos + 4)
6102 0 18 $val < 0 ? :
6114 1255 634 $val > 0 ? :
6141 8653 7657 if ($order eq 'MM') { }
7460 197 elsif ($order eq 'II') { }
16 181 elsif ($order =~ /^Big/i) { }
12 169 elsif ($order =~ /^Little/i) { }
6156 0 16141 if ($val == 16672) { }
16141 0 elsif ($val == 8257) { }
6182 4 35 &GetByteOrder() eq 'II' ? :
6268 0 37363 unless ($len)
6272 0 37363 unless defined $size
6273 1417 35946 unless ($count)
6274 29 1388 if defined $count or $size < $len
6278 3 37331 if ($len * $count > $size)
6280 3 0 if $count < 1
6284 6623 30708 if (not $proc) { }
3132 27576 elsif ($isRational{$format} and $ratPt) { }
6288 3895 2728 if $format eq "string"
6295 3132 334 if --$count <= 0
6302 27576 22903 if --$count <= 0
6306 412 36919 if wantarray
6307 3713 33206 if @vals > 1
6324 112 6382 unless $from
6325 6200 294 unless $to
6326 1165 5329 if ($from ne $to and length $val)
6330 1165 0 if ($cs1 and $cs2 and not $cs2 & 2) { }
0 0 elsif ($self) { }
6332 825 340 if (($cs1 | $cs2) & 1664 or $val =~ /[\x80-\xff]/)
6337 0 0 $cs1 ? :
6338 0 0 unless ($$self{"DecodeWarn$set"})
6365 137 40 unless $bits
6370 5972 140 unless $val & 1 << $i
6372 19 121 if (not $lookup) { }
115 6 elsif ($lookup->{$n}) { }
6382 80 97 unless @bitList
6383 78 19 $lookup ? :
6394 0 208 if $$imagePt eq "none"
6395 124 10 unless ($$imagePt =~ /^(Binary data|\xff\xd8\xff)/ or $$imagePt =~ s/^.(\xd8\xff\xdb)/\377$1/s or $self->Options("IgnoreMinorErrors"))
6402 0 124 if ($self->{'REQ_TAG_LOOKUP'}{lc &GetTagName($tag)})
6434 1 39040 if length $name < 2 or $name =~ /^[-0-9]/
6450 10214 1103 unless defined $tagID
6458 1112 10205 if defined $tagID
6487 13014 463 unless defined $filter and defined $$valPt
6489 447 16 if (not ref $$valPt) { }
12 4 elsif (ref $$valPt eq 'SCALAR') { }
4 0 elsif (ref $$valPt eq 'ARRAY') { }
0 0 elsif (ref $$valPt eq 'HASH') { }
6493 447 0 if (defined $_)
6523 0 590 unless defined $outStr
6524 0 590 if ref $outStr eq "SCALAR"
6528 590 0 if ($verbose < 4) { }
6529 589 1 if ($maxLen) { }
1 0 elsif (defined $maxLen) { }
6530 0 589 if $maxLen < 20
6539 0 0 if $maxLen > 2048 and $verbose < 5
6543 8 582 if length $outStr > $maxLen
6556 8 1837 if ($shift)
6559 0 8 if ($shift =~ s/^((\d?[A-Z][-\w]*\w:)*)([A-Z][-\w]*\w)([-+])//i) { }
6560 0 0 $4 eq '-' ? :
6562 8 0 $shift =~ s/^([-+])// && $1 eq '-' ? :
6564 1 7 unless ($offset)
6567 0 1 if ($t)
6570 0 0 if ($g and @matches)
6575 0 0 if (not @matches and $self->{'TAGS_FROM_FILE'} and $self->{'OPTIONS'}{'RequestTags'})
6584 0 0 unless $$ti{$matches[0]}{'PrintConv'}
6585 0 0 unless $$ti{$matches[0]}{'PrintConv'} =~ /ConvertDateTime/
6591 0 1 if (@matches)
6593 0 0 if defined $val
6599 5 1840 if ($fmt)
6602 4 1 if $date =~ s/([-+]\d{2}:\d{2}|Z)$//
6608 5 0 if (@a and $a[-1] >= 1000 and $a[-1] < 3000 and eval { do { require POSIX } }) { }
0 0 elsif ($self->{'OPTIONS'}{'StrictDate'}) { }
6615 0 5 if ($fmt =~ /%(-?)\.?(\d*)f/)
6617 0 0 $date =~ /(\.\d+)/ ? :
6618 0 0 if (not $frac) { }
0 0 elsif (length $dig) { }
6619 0 0 if $dig
6621 0 0 if ($dig + 1 > length $frac) { }
0 0 elsif ($dig + 1 < length $frac) { }
6627 0 0 if ++$a[0] < 60
6629 0 0 if ++$a[1] < 60
6631 0 0 if ++$a[2] < 24
6634 0 0 if ++$a[3] <= DaysInMonth($a[4] + 1, $a[5])
6636 0 0 if ++$a[4] < 12
6643 0 0 if $neg
6647 0 5 if ($fmt =~ /%:?[sz]/)
6649 0 0 if not $tz and eval { do { require Time::Local } }
6651 0 0 unless $tz and $tz =~ /^[-+]\d{2}:\d{2}$/
6655 0 0 if ($fmt =~ /%s/ and eval { do { require Time::Local } })
6664 0 5 if $fmt =~ /[\x80-\xff]/
6679 3 0 if (&IsFloat($val) and $val != 0)
6680 2 1 if $mult
6681 0 3 if ($val < 60) { }
3 0 elsif ($val < 3600) { }
0 0 elsif ($val < 86400) { }
6684 2 1 $mult && $mult >= 60 ? :
6685 1 2 $val == 60 && $mult ? :
6704 0 36 if ($^O eq "MSWin32")
6724 0 967 if ($tm->[3] != $gm->[3])
6726 0 0 $tm->[3] == 1 ? :
0 0 if abs $tm->[3] - $gm->[3] != 1
6732 0 0 $min > 0 ? :
0 967 if $^O eq "mirbsd"
6744 967 41 if (ref $min)
6749 1 1007 if $min < 0
6764 1 1069 if $time == 0
6766 1057 12 unless defined $dec
6767 1 1068 if $dec < 0
6770 0 1069 if $frac < 0
6773 7 1062 if $dec =~ s/^(\d)// and $1 eq 1
6774 1 1068 if $trim
6775 164 905 if (not $toLocal) { }
0 905 elsif ($Image::ExifTool::static_vars{'KeepUTCTime'}) { }
6797 0 176 if $timeStr eq "0000:00:00 00:00:00"
6799 0 176 unless @tm == 7
6800 0 176 unless (eval { do { require Time::Local } })
6807 127 49 if ($isLocal)
6808 127 0 if ($tzStr =~ /(?:Z|([-+])(\d+):(\d+))/i) { }
0 0 elsif ($isLocal eq '2') { }
6810 62 59 $1 eq '-' ? :
121 6 if $1
6818 0 176 $isLocal ? :
6820 5 169 if $tzStr and $tzStr =~ /^(\.\d+)/
6831 0 310 if ($et and $et->{'OPTIONS'}{'ByteUnit'} eq 'Binary') { }
6832 0 0 if $val < 2048
6833 0 0 if $val < 10240
6834 0 0 if $val < 2097152
6835 0 0 if $val < 10485760
6836 0 0 if $val < 2147483648
6837 0 0 if $val < '10737418240'
6840 111 199 if $val < 2000
6841 149 50 if $val < 10000
6842 46 4 if $val < 2000000
6843 3 1 if $val < 10000000
6844 1 0 if $val < 2000000000
6845 0 0 if $val < '10000000000'
6857 0 130 unless &IsFloat($time)
6858 69 61 if $time == 0
6859 61 0 $time > 0 ? :
6860 57 4 if $time < 30
6866 0 4 if ($h > 24)
6882 0 20 unless &IsFloat($bitrate)
6886 18 20 if $bitrate >= 1000 and @units
6887 13 7 $bitrate < 100 ? :
6900 0 1010 if $enc
6912 0 1 if $enc
6925 48 368 if (length $str > $lim and $lim >= 5)
6938 0 0 unless $self->{'HTML_DUMP'}
6940 0 0 if $self->{'BASE'}
6943 0 0 if ($self->{'SkipData'})
6947 0 0 if $end <= $skip->[0]
6948 0 0 if $pos >= $skip->[1]
6949 0 0 if ($pos != $skip->[0])
6969 403 182 unless $offset
6974 585 0 if $len > 64
6975 0 585 unless $raf->Seek(-$len, 1) and $raf->Read($buff, $len) == $len
6976 29 556 if ($buff =~ /AXS(!|\*).{8}$/s) { }
29 527 elsif ($buff =~ /\xa1\xb2\xc3\xd4$/) { }
34 493 elsif ($buff =~ /cbipcbbl$/) { }
41 452 elsif ($buff =~ /^CANON OPTIONAL DATA\0/) { }
26 426 elsif ($buff =~ /~\0\x04\0zmie~\0\0\x06.{4}[\x10\x18]\x04$/s or $buff =~ /~\0\x04\0zmie~\0\0\x0a.{8}[\x10\x18]\x08$/s) { }
26 400 elsif ($buff =~ /\0\0(QDIOBS|SEFT)$/) { }
0 400 elsif ($buff =~ /8db42d694ccc418790edff439fe026bf$/s) { }
0 400 elsif ($buff =~ m[\0{6}/NIKON APP$]) { }
26 374 elsif ($buff =~ /\xff{4}\x1b\*9HWfu\x84\x93\xa2\xb1$/) { }
0 374 elsif ($buff =~ /jxrs...\0$/s) { }
1 373 elsif ($self->{'ProcessGoogleTrailer'}) { }
7005 212 373 $type ? :
7050 57 175 if ($outfile)
7052 42 15 if $$outfile
7102 57 175 if ($outfile) { }
20 155 elsif ($result < 0) { }
7103 7 50 if ($result < 0)
7106 7 0 if ($self->{'TrailerStart'})
7107 0 7 unless $dataPos
7108 0 7 unless $dirLen
7110 0 7 if ($self->{'DEL_GROUP'}{'Trailer'} or $self->{'DEL_GROUP'}{$dirName}) { }
7 0 elsif ($dataPos and $dirLen) { }
7111 0 0 $dirLen ? :
7117 0 7 unless $raf->Seek($dataPos) and $raf->Read(${$$dirInfo{"OutFile"};}, $dirLen) == $dirLen
7122 57 0 if ($result > 0) { }
7123 40 17 if ($outBuff)
7127 33 7 if $fixup
7130 15 42 if ($dirInfo->{'Fixup'})
7131 7 8 if ($fixup)
7141 0 0 if $self->Error("Error rewriting $dirName trailer", 2)
7149 1 211 unless $result > 0 and $dirLen
7151 29 182 if $dataPos and $self->{'TrailerStart'} and $dataPos <= $self->{'TrailerStart'}
7155 28 154 unless ($nextTrail)
7156 28 0 unless $self->{'ProcessGoogleTrailer'}
7217 1180 2020 unless ($markerName)
7219 1180 0 if ($markerName and $markerName =~ /^([A-Z]+)\d+$/) { }
7237 279 303 if (defined $base)
7266 0 251 unless ($raf)
7271 242 9 if ($self->{'FILE_TYPE'} =~ /^(JPEG|JP2)$/ and not $self->{'DOC_NUM'})
7276 251 0 if ($raf->Read($s, 2) == 2 and $s =~ /^\xff[\xd8\x4f\x01]/) { }
7279 0 0 unless $optionalTagTable and $s =~ /^\xff[\xe0-\xef]/
7280 0 0 unless $raf->Seek(-2, 1)
7282 2 249 if ($s eq "\377\1")
7283 0 2 unless $raf->Read($s, 5) == 5 and $s eq "Exiv2"
7288 0 251 if ($options->{'RequestAll'} and $options->{'RequestAll'} > 2)
7291 243 2 if (not $self->{'VALUE'}{'FileType'} or $self->{'DOC_NUM'} and $options->{'ExtractEmbedded'})
7293 1 242 if $fast > 2
7296 1 249 if $self->Options("FastScan")
7298 250 0 if $verbose < 4
7299 0 250 if ($htmlDump and not $optionalTagTable)
7301 0 0 $s eq 'Exiv2' ? :
7303 0 0 if $pos
7318 0 2217 if $marker and $marker < 0
7332 0 1946 unless ($raf->ReadLine($buff))
7333 0 0 unless $optionalTagTable
7341 0 1946 unless $raf->Read($ch, 1)
7343 1946 0 unless $nextMarker == 255
7347 1675 271 if (not defined $markerLenBytes{$nextMarker}) { }
0 271 elsif ($markerLenBytes{$nextMarker} == 4) { }
0 271 elsif ($hash and defined $marker and $marker == 0 || $marker == 218 || $marker >= 208 && $marker <= 215) { }
7349 0 1675 unless $raf->Read($s, 2) == 2
7351 0 1675 unless defined $len and $len >= 2
7354 0 1675 unless $raf->Read($buff, $len) == $len
7358 0 0 unless $raf->Read($s, 4) == 4
7360 0 0 unless defined $len and $len >= 4
7363 0 0 unless $raf->Seek($len, 1)
7370 0 0 if (not $n) { }
0 0 elsif ($n > 1) { }
7379 271 1675 unless defined $marker
7386 0 0 if ($skipped and not $foundSOS and $markerName ne "SOS")
7388 0 0 if ($htmlDump)
7397 247 1699 if (($marker & 240) == 192 and $marker == 192 || $marker & 3) { }
23 1676 elsif ($marker == 217) { }
247 1429 elsif ($marker == 218) { }
1 1428 elsif ($marker == 147) { }
0 1428 elsif (defined $markerLenBytes{$marker}) { }
1 1631 elsif ($marker == 219 and length $$segDataPt and $req->{'jpegdigest'} || $req->{'jpegqualityestimate'} || $options->{'RequestAll'} && $options->{'RequestAll'} > 2) { }
7399 2 245 if ($verbose) { }
0 245 elsif ($htmlDump) { }
7401 1 1 if $verbose > 2
7406 0 247 if $length < 6 or $gotSize
7416 0 247 unless $n == 3 and $length >= 15
7425 247 494 unless ($i)
7431 247 247 if $hf < $hmin
7432 0 494 if $hf > $hmax
7433 246 248 if $vf < $vmin
7434 0 494 if $vf > $vmax
7436 247 0 if ($hmin and $vmin)
7443 1 22 if $verbose
7445 23 0 unless $self->{'DOC_NUM'}
7446 0 23 if ($htmlDump and $dumpEnd)
7451 23 0 if ($foundSOS or $self->{'FILE_TYPE'} eq 'EXV') { }
7456 0 23 if ($req->{'trailer'})
7458 0 0 if ($raf->Seek(0, 2)) { }
7460 0 0 if ($len)
7463 0 0 if $raf->Read($buff, $len) == $len
7471 0 23 if ($wantTrailer)
7473 0 0 if ($start or $options->{'ExtractEmbedded'})
7479 0 0 $self->{'Make'} =~ /Sony/i ? :
7480 0 0 if ($raf->Read($buff, $scanLen))
7481 0 0 if ($buff =~ /^.{4}ftyp/s) { }
0 0 elsif ($buff =~ /\xff\xd8\xff./g or $self->{'Make'} =~ /(Minolta|Sony)/i and $buff =~ /.\xd8\xff\xdb/g) { }
7483 0 0 if ($raf->Seek(0, 2)) { }
7485 0 0 if ($options->{'Binary'}) { }
7486 0 0 if $raf->Seek($pos, 0) and $raf->Read($buff, $len) == $len
7490 0 0 if ($val) { }
7503 0 0 if ($start and $start ne $actual and $verbose > 1)
7507 0 0 if ($start)
7508 0 0 if $self->{'VALUE'}{'PreviewImageStart'}
7512 0 0 if ($self->{'PreviewError'} and $self->{'PreviewImageLength'})
7513 0 0 if ($raf->Seek($actual, 0) and $raf->Read($buff, $self->{'PreviewImageLength'}))
7526 20 3 if ($trailInfo)
7533 0 23 if ($self->{'LeicaTrailer'})
7540 1 22 if ($verbose or $htmlDump)
7542 1 0 unless ($endPos)
7547 0 1 if $endPos > $pos
7552 0 23 if $calcImageLen
7558 2 245 if $verbose
7561 2 245 if (%extendedXMP)
7567 2 0 if $readGuid eq 1
7569 0 2 unless length $guid == 32
7574 0 3 unless defined $extXMP->{$off}
7578 0 2 unless ($off == $extXMP->{'Size'})
7582 2 0 if ($guid eq $readGuid or $readGuid eq '2') { }
7583 0 2 if $guid ne $goodGuid
7598 0 0 if $guid ne $goodGuid
7600 0 2 if $warn
7604 246 1 unless ($fast)
7607 29 0 if ($trailInfo and $verbose < 3 and not $htmlDump)
7610 9 20 if $self->ProcessTrailers($trailInfo)
7612 0 0 if ($wantTrailer and $self->{'PreviewImageStart'})
7616 0 0 if ($raf->Seek($self->{'PreviewImageStart'}, 0) and $raf->Read($buff, 4) == 4 and $buff =~ /^.\xd8\xff[\xc4\xdb\xe0-\xef]/)
7622 0 0 unless $raf->Seek($curPos, 0)
7625 0 246 if ($self->{'LeicaTrailer'}) { }
0 246 elsif ($options->{'ExtractEmbedded'} or $self->{'VALUE'}{'HiddenDataOffset'} and $self->{'VALUE'}{'HiddenDataLength'} and $options->{'Validate'} || $req->{'hiddendata'}) { }
7628 0 0 if $self->{'LeicaTrailer'}
7634 1 225 if $trailInfo or $wantTrailer or $verbose > 2 or $htmlDump
7637 0 226 if $options->{'Validate'} or $calcImageLen or $req->{'trailer'} or $hash
7643 0 1 if $verbose
7645 0 1 if ($hash and $self->{'FILE_TYPE'} eq "JP2")
7650 0 1 if $verbose > 2 or $htmlDump
7654 0 0 if ($verbose and $marker)
7655 0 0 if $verbose < 4 and ($marker & 248) == 208
7669 1 0 if $num < 4
7675 896 532 if ($marker & 240) == 224
7676 6 1422 if ($verbose)
7678 3 3 if ($verbose > 2)
7680 0 3 if $verbose == 4
7694 108 1320 if ($marker == 224) { }
280 1040 elsif ($marker == 225) { }
121 919 elsif ($marker == 226) { }
21 898 elsif ($marker == 227) { }
1 897 elsif ($marker == 228) { }
21 876 elsif ($marker == 229) { }
38 838 elsif ($marker == 230) { }
20 818 elsif ($marker == 231) { }
20 798 elsif ($marker == 232) { }
20 778 elsif ($marker == 233) { }
19 759 elsif ($marker == 234) { }
38 721 elsif ($marker == 235) { }
40 681 elsif ($marker == 236) { }
85 596 elsif ($marker == 237) { }
45 551 elsif ($marker == 238) { }
19 532 elsif ($marker == 239) { }
27 505 elsif ($marker == 254) { }
2 503 elsif ($marker == 100) { }
1 502 elsif ($marker == 81) { }
502 0 elsif (($marker & 240) != 224) { }
7695 51 57 if ($$segDataPt =~ /^JFIF\0/) { }
19 38 elsif ($$segDataPt =~ /^JFXX\0(\x10|\x11|\x13)/) { }
19 19 elsif ($$segDataPt =~ /^(II|MM).{4}HEAPJPGM/s) { }
19 0 elsif ($$segDataPt =~ /^(AVI1|Ocad)/) { }
7708 0 19 if $fast > 1
7727 203 77 if ($$segDataPt =~ /^(.{0,4})Exif\0./is) { }
3 74 elsif ($$segDataPt =~ /^$Image::ExifTool::xmpExtAPP1hdr/) { }
1 73 elsif ($$segDataPt =~ /^QVCI\0/) { }
1 72 elsif ($$segDataPt =~ /^FLIR\0/ and $length >= 8) { }
0 72 elsif ($$segDataPt =~ /^PARROT\0(II\x2a\0|MM\0\x2a)/) { }
7732 0 203 if (length $1) { }
0 203 elsif (not $$segDataPt =~ /^Exif\0/) { }
7738 0 203 if ($htmlDump)
7744 0 203 if (defined $combinedSegData)
7752 0 203 if ($nextMarker == $marker and $$nextSegDataPt =~ /^$Image::ExifTool::exifAPP1hdr(?!(MM\0\x2a|II\x2a\0))/)
7756 0 0 unless (defined $combinedSegData)
7769 0 203 if @skipData
7771 0 203 unless $self->ProcessTIFF(\%dirInfo)
7773 0 0 if ($self->{'Make'} eq "vivo" and not $self->{'VALUE'}{'UserComment'} && $self->{'VALUE'}{'UserComment'} =~ /^filter:/ and $$dataPt =~ /(filter: .*?; \n)\0/gs)
7778 0 0 if ($htmlDump)
7790 187 4 if (not $start or not $plen and $self->{'PreviewError'})
7794 0 0 if ($start and $plen and &IsInt($start) and &IsInt($plen) and $start + $plen > $self->{'EXIF_POS'} + length($self->{'EXIF_DATA'}) and $req->{'previewimage'} || $options->{'Binary'} && !$self->{'EXCL_TAG_LOOKUP'}{'previewimage'})
7804 0 203 if (@skipData)
7817 3 0 if ($length > 75) { }
7820 0 3 if ($guid =~ /[^A-Za-z0-9]/) { }
7824 2 1 if (not $extXMP) { }
0 1 elsif ($size != $extXMP->{'Size'}) { }
7848 0 1 if $verbose
7850 0 1 if (defined $flirTotal) { }
7852 0 0 if $chunksTot != $flirTotal
7857 1 0 if (defined $flirCount) { }
7858 0 1 if (defined $flirChunk[$chunkNum]) { }
7865 1 0 if (++$flirCount >= $flirTotal)
7889 72 0 if ($$segDataPt =~ /^(http|XMP\0)/ or $$segDataPt =~ /<(exif:|\?xpacket)/)
7893 72 0 $$segDataPt =~ /^$Image::ExifTool::xmpAPP1hdr/ ? :
7896 72 0 $start ? :
7898 0 72 if ($processed and not $start)
7902 0 72 if ($verbose and not $processed)
7907 34 87 if ($$segDataPt =~ /^ICC_PROFILE\0/ and $length >= 14) { }
67 20 elsif ($$segDataPt =~ /^FPXR\0/) { }
19 1 elsif ($$segDataPt =~ /^MPF\0/) { }
1 0 elsif ($$segDataPt =~ /^....IJPEG\0/s) { }
0 0 elsif ($$segDataPt =~ /^(|QVGA\0|BGTH)\xff\xd8\xff[\xdb\xe0\xe1]/) { }
0 0 elsif ($$segDataPt =~ /^urn:/) { }
0 0 elsif ($preview) { }
7913 0 34 if $verbose
7914 0 34 if (defined $iccChunksTotal) { }
7916 0 0 if $chunksTot != $iccChunksTotal
7920 0 34 unless $chunksTot
7922 34 0 if (defined $iccChunkCount) { }
7923 0 34 if (defined $iccChunk[$chunkNum]) { }
7930 34 0 if (++$iccChunkCount >= $iccChunksTotal)
7950 0 67 if $fast > 1
7960 0 19 if ($htmlDump)
7986 0 121 if ($preview and $nextMarker ne $marker)
7991 19 2 if ($$segDataPt =~ /^(Meta|META|Exif)\0\0/) { }
0 2 elsif ($$segDataPt =~ /^Stim\0/) { }
1 1 elsif ($$segDataPt =~ /^_JPSJPS_/) { }
1 0 elsif ($self->{'HasIJPEG'} or $self->{'Make'} eq 'DJI') { }
0 0 elsif ($$segDataPt =~ /^\xff\xd8\xff\xdb/) { }
7994 0 19 if ($htmlDump)
8003 0 0 if ($htmlDump)
8013 1 0 if $self->{'FILE_TYPE'} eq "JPEG"
8018 1 0 $self->{'HasIJPEG'} ? :
8021 0 1 if (defined $combinedSegData)
8025 0 1 if ($nextMarker == $marker) { }
8026 0 0 unless defined $combinedSegData
8037 0 21 if ($preview and $nextMarker ne 228)
8042 0 1 if ($$segDataPt =~ /^SCALADO\0/ and $length >= 16) { }
0 1 elsif ($$segDataPt =~ /^Qualcomm Dual Camera Attributes/) { }
0 1 elsif ($$segDataPt =~ /^FPXR\0/) { }
0 1 elsif ($self->{'Make'} eq 'DJI' and $$segDataPt =~ /^\xaa\x55\x12\x06/) { }
0 1 elsif ($self->{'Make'} eq 'DJI' and $$segDataPt =~ /^(.{32})?.{32}\x2c\x01\x20\0/s) { }
0 1 elsif ($self->{'Make'} eq 'DJI' and $$segDataPt =~ /^.{32}\xaa\x55\x38\0/s) { }
1 0 elsif ($self->{'HasIJPEG'} and $length >= 120) { }
0 0 elsif ($preview) { }
8046 0 0 unless defined $scalado
8048 0 0 if ($idx == $num - 1)
8049 0 0 if ($len != length $scalado)
8067 0 0 if $fast > 1
8080 0 0 $1 ? :
8100 0 1 if ($preview and $nextMarker ne 229)
8105 20 1 if ($$segDataPt =~ /^RMETA\0/) { }
0 1 elsif ($$segDataPt =~ /^ssuniqueid\0/) { }
0 1 elsif ($self->{'Make'} eq 'DJI') { }
1 0 elsif ($self->{'HasIJPEG'} and $length >= 38) { }
0 0 elsif ($preview) { }
8131 18 20 if ($$segDataPt =~ /^EPPIM\0/) { }
18 2 elsif ($$segDataPt =~ /^NITF\0/) { }
0 2 elsif ($$segDataPt =~ /^TDHD\x01\0\0\0/ and $length > 12) { }
1 1 elsif ($$segDataPt =~ /^GoPro\0/) { }
0 1 elsif ($$segDataPt =~ /^DTAT\0\0.\{/s) { }
1 0 elsif ($self->{'HasIJPEG'} and $length >= 129) { }
8134 0 18 if ($htmlDump)
8170 0 20 if ($$segDataPt =~ /^(PENTAX |RICOH)\0(II|MM)/) { }
0 20 elsif ($$segDataPt =~ /^HUAWEI\0\0(II|MM)/) { }
0 20 elsif ($$segDataPt =~ /^DJI-DBG\0/) { }
19 1 elsif ($$segDataPt =~ /^\x1aQualcomm Camera Attributes/) { }
1 0 elsif ($self->{'HasIJPEG'} and $length >= 32) { }
8178 0 0 if ($htmlDump)
8191 0 0 if ($htmlDump)
8223 19 1 if ($$segDataPt =~ /^SPIFF\0/ and $length == 32) { }
1 0 elsif ($self->{'HasIJPEG'} and $length >= 32) { }
0 0 elsif ($$segDataPt =~ /^SEAL\0/) { }
8239 19 1 if ($$segDataPt =~ /^Media Jukebox\0/ and $length > 22) { }
1 0 elsif ($self->{'HasIJPEG'} and $length >= 768) { }
0 0 elsif ($$segDataPt =~ /^SEAL\0/) { }
8258 19 0 if ($$segDataPt =~ /^UNICODE\0/) { }
0 0 elsif ($$segDataPt =~ /^AROT\0\0.{4}/s) { }
8267 19 19 if ($$segDataPt =~ /^HDR_RI /) { }
19 0 elsif ($$segDataPt =~ /^(JP..)/s and length $$segDataPt >= 16) { }
8270 0 19 if (defined $combinedSegData)
8271 0 0 if ($$segDataPt =~ /~\0/g) { }
8278 0 19 if ($nextMarker == $marker and $$nextSegDataPt =~ /^HDR_RI /) { }
8279 0 0 unless defined $combinedSegData
8296 0 19 if ($type eq "bmuj")
8304 0 19 if ($len == 1 and length $$segDataPt >= 24) { }
8311 19 0 unless $jumbfChunk{$type}
8312 0 19 if ($len < $hdrLen) { }
0 19 elsif (defined $jumbfChunk{$type}[$seq] and length $jumbfChunk{$type}[$seq]) { }
8317 0 19 unless $seq
8323 0 38 unless defined $_
8326 19 0 if ($size == $len)
8339 21 19 if ($$segDataPt =~ /^Ducky/) { }
8346 19 0 if $self->ProcessDirectory(\%dirInfo, $tagTablePtr)
8350 66 19 if ($$segDataPt =~ /^$Image::ExifTool::psAPP13hdr/ or $$segDataPt =~ /^$Image::ExifTool::psAPP13old/ and $isOld = 1) { }
19 0 elsif ($$segDataPt =~ /^Adobe_CM/) { }
8354 0 66 if (defined $combinedSegData)
8359 0 66 if ($nextMarker == $marker and $$nextSegDataPt =~ /^$Image::ExifTool::psAPP13hdr/) { }
8361 0 0 unless defined $combinedSegData
8364 0 66 $isOld ? :
8386 45 0 if ($$segDataPt =~ /^Adobe/)
8388 15 30 if ($req->{'adobe'} or $self->{'TAGS_FROM_FILE'} and not $self->{'EXCL_TAG_LOOKUP'}{'adobe'})
8401 19 0 if ($$segDataPt =~ /^Q\s*(\d+)/ and $length == 4)
8412 2 0 if ($length > 2)
8415 2 0 if $reg == 1
8417 0 2 $reg == 0 || $reg == 65535 ? :
8421 1 0 unless ($gotSize)
8430 1169 56 if (defined $dumpType)
8431 0 1169 if ($useJpegMain)
8435 0 1 if (not $dumpType and $options->{'Unknown'} || $options->{'Validate'})
8436 0 0 $$segDataPt =~ /^([\x20-\x7e]{1,20})\0/ ? :
8437 0 0 unless $xtra
8440 0 1169 if ($htmlDump)
8441 0 0 $dumpType ? :
0 0 unless $desc
8449 0 250 if $hashsize and $verbose
8451 1 249 if (@dqt)
8456 0 250 if %jumbfChunk
8457 0 250 if defined $iccChunkCount
8458 0 250 if defined $flirCount
8459 0 250 if $self->{'PreviewError'}
8460 0 250 unless $success
8461 0 250 if @$path > $pn
8495 108 394 if (defined $exifData)
8530 47 455 if ($raf) { }
411 44 elsif ($dataPt and length $$dataPt) { }
44 0 elsif ($outfile) { }
8532 14 33 if ($outfile) { }
8533 0 14 unless $raf->Seek(0, 0)
8534 0 14 if ($base)
8535 0 0 unless $raf->Read($$dataPt, $base) == $base
8536 0 0 unless &Write($outfile, $$dataPt)
8539 0 33 unless $raf->Seek($base, 0)
8542 3 44 $fileType eq 'EXIF' ? :
8544 1 46 if ($n < 8)
8545 0 1 if $n or not $outfile or $fileType ne "EXIF"
8550 2 45 if ($n > 8)
8552 0 2 if ($n == $amount)
8561 411 0 if ($dirLen > 0 or not $outfile) { }
8566 0 411 if $self->{'OPTIONS'}{'Verbose'} and length $self->{'INDENT'} > 2
8572 45 457 unless (defined $self->{'EXIF_DATA'})
8575 0 45 if ($dirInfo->{'DirName'} and $dirInfo->{'DirName'} eq "GPS")
8579 36 9 if ($self->SetPreferredByteOrder($defaultByteOrder) eq 'MM') { }
8586 394 108 unless defined $self->{'FIRST_EXIF_POS'}
8591 6 496 unless &SetByteOrder($byteOrder)
8599 0 496 if $fileType eq "APP1" and $identifier != 42
8602 0 496 if length $$dataPt < 8
8604 0 496 unless $offset >= 8
8606 40 456 if ($raf)
8610 17 23 if ($identifier == 42 and $offset >= 16) { }
3 20 elsif ($identifier == 85 and $fileType =~ /^(RAW|RW2|RWL|TIFF)$/) { }
13 7 elsif ($fileType eq 'TIFF') { }
0 7 elsif ($fileType eq 'ARW') { }
8611 0 17 unless $raf->Read($sig, 8) == 8
8613 10 7 if ($sig =~ /^(CR\x02\0|\xba\xb0\xac\xbb|ExifMeta)/)
8614 1 9 if ($sig eq 'ExifMeta') { }
8618 9 0 $sig =~ /^CR/ ? :
8621 0 10 if $self->{'HTML_DUMP'}
8627 3 0 if ($offset >= 24 and $raf->Read($magic, 16) and $magic eq "\210\347t\330\370%\035M\224znw\202+]j") { }
8630 3 0 unless $fileType eq "RWL"
8631 0 3 if $self->{'HTML_DUMP'}
8638 0 13 if ($identifier == 43) { }
0 13 elsif ($identifier == 20306 or $identifier == 21330) { }
0 13 elsif ($identifier == 17234) { }
0 26 elsif ($byteOrder eq 'II' and ($identifier & 255) == 188) { }
8643 0 0 if ($result)
8644 0 0 if $self->{'MultiPage'}
8656 0 0 if ($ver > 1)
8665 38 2 if ($fileType and not $self->{'VALUE'}{'FileType'})
8667 0 38 unless ref $lookup or not $lookup
8669 0 38 ref $lookup->[0] ? :
38 0 $lookup ? :
8670 37 1 $baseType eq 'TIFF' || $fileType =~ /RAW/ ? :
8674 0 27 if not $outfile and $self->{'OPTIONS'}{'FastScan'} and $self->{'OPTIONS'}{'FastScan'} > 2
8677 18 478 $dirInfo->{'DirName'} && $dirInfo->{'DirName'} =~ /^(ExifIFD|GPS)$/ ? :
8678 420 76 if (not $tagTablePtr or $tagTablePtr->{'GROUPS'}{'0'} eq 'EXIF') { }
19 57 elsif ($tagTablePtr->{'GROUPS'}{'0'} eq 'MakerNotes') { }
8679 298 122 unless $outfile
8686 0 496 if ($self->{'HTML_DUMP'})
8687 0 0 $byteOrder eq 'II' ? :
8695 243 253 unless $tagTablePtr
8713 370 126 unless ($outfile)
8717 7 363 if ($self->{'VALUE'}{'GeoTiffDirectory'})
8722 27 343 if ($raf)
8724 3 24 if ($trailInfo)
8731 0 0 if ($self->{'HTML_DUMP'} and $self->{'KnownTrailer'})
8735 0 0 if $trailInfo
8736 0 0 if $len > 0
8740 0 2 if ($self->{'DNGVersion'} and $self->{'FILE_TYPE'} eq "TIFF" and not $self->{'FileType'} =~ /^(DNG|GPR)$/)
8744 10 360 if ($self->{'TIFF_TYPE'} eq 'TIFF') { }
0 360 elsif ($self->{'TIFF_TYPE'} eq 'NRW' and $self->{'VALUE'}{'NEFLinearizationTable'}) { }
8745 0 10 if $self->{'MultiPage'}
8750 0 0 if ($self->{'ImageDataHash'} and $self->{'A100DataOffset'} and $raf->Seek($self->{'A100DataOffset'}, 0))
8758 1 125 if ($dirInfo->{'NoTiffEnd'}) { }
8764 3 123 if ($canonSig) { }
8769 0 3 unless Image::ExifTool::CanonRaw::WriteCR2($self, \%dirInfo, $tagTablePtr)
8772 3 120 if ($fileType eq 'EXIF') { }
119 1 elsif (not defined $otherSig) { }
8784 1 122 if $fileType eq "ORF" or $identifier != 42
8786 0 123 if (not defined $newData) { }
117 6 elsif (length $newData) { }
8791 5 112 if ($hdrLen != 8)
8795 0 0 if $pi and $pi->{'Fixup'}
8797 0 117 if ($self->{'TIFF_TYPE'} eq 'ARW' and not $err) { }
8802 0 0 if $errStr
8805 0 117 unless &Write($outfile, $header, $newData)
8810 10 113 if (ref $dirInfo{'ImageData'} and not $err)
8811 0 10 unless $self->CopyImageData($dirInfo{'ImageData'}, $outfile)
8820 12 1 if ($raf and $tiffEnd and not $err)
8822 0 12 unless $raf->Seek(0, 2)
8826 9 3 unless $extra > 12
8829 3 0 unless $trailInfo
8835 0 0 unless ($self->ProcessTrailers($trailInfo))
8845 1 11 if ($extra > 0 and $tiffEnd & 1)
8846 0 1 unless $raf->Seek($tiffEnd, 0)
8847 0 1 unless $raf->Read($buf, 1)
8848 1 0 if defined $buf and $buf eq "\0"
8850 3 9 if ($extra > 0)
8852 0 3 if ($self->{'DEL_GROUP'}{'Trailer'} and not $known) { }
0 3 elsif ($known) { }
8857 0 0 unless $raf->Seek($tiffEnd, 0)
8858 0 0 unless &CopyBlock($raf, $outfile, $extra)
8860 0 3 unless $raf->Seek($tiffEnd, 0)
8865 0 3 $size > 65536 ? :
8866 0 3 unless $raf->Read($buf, $n) == $n
8867 3 0 if ($buf =~ /[^\0]/)
8870 0 3 if $size != $extra
8871 0 3 unless &Write($outfile, $buf)
8872 0 3 if $size > $n
8876 0 0 if $size > 0
8883 0 12 if $trailInfo
8886 2 10 if $trailPt
8889 1 125 if ($self->{'DNGVersion'})
8892 0 1 unless ($ver =~ /^(\d+) (\d+)/ and "$1.$2" <= "1.7")
8897 0 126 $err ? :
8910 453454 68218 unless $Image::ExifTool::specialTags{$_}
8929 4 97540 unless my $tableName = shift()
8932 4825 92715 unless ($table)
8934 919 3906 unless (%$tableName)
8936 919 0 if ($tableName =~ /(.*)::/)
8938 0 919 if (not eval "require $module") { }
28 891 elsif (not %$tableName) { }
8939 0 0 if $@
8942 28 0 if ($module eq 'Image::ExifTool::XMP') { }
0 0 elsif ($tableName eq 'Image::ExifTool::QuickTime::Stream') { }
8949 0 919 unless %$tableName
8954 13 4812 if $table->{'INIT_TABLE'}
8959 129 4696 unless $defaultGroups
8960 3829 996 unless ($defaultGroups->{'0'} and $defaultGroups->{'1'})
8961 3829 0 if ($tableName =~ /Image::.*?::([^:]*)/) { }
8962 1424 2405 unless $defaultGroups->{'0'}
8963 3143 686 unless $defaultGroups->{'1'}
8965 0 0 unless $defaultGroups->{'0'}
8966 0 0 unless $defaultGroups->{'1'}
8969 288 4537 unless $defaultGroups->{'2'}
8970 549 4276 if ($defaultGroups->{'0'} eq "XMP" or $table->{'NAMESPACE'})
8975 24 525 unless $table->{'WRITE_PROC'}
8976 68 481 unless $table->{'CHECK_PROC'}
8977 65 484 unless $table->{'LANG_INFO'}
8980 4691 134 unless (defined $table->{'TAG_PREFIX'})
8982 4691 0 if ($tableName =~ /Image::.*?::(.*)::Main/ or $tableName =~ /Image::.*?::(.*)/) { }
8992 2 631 if (%Image::ExifTool::UserDefined and $Image::ExifTool::UserDefined{$tableName} and $table ne \%Image::ExifTool::Composite)
8995 0 3 if $Image::ExifTool::specialTags{$tagID}
9007 0 142 if ($table eq \%Image::ExifTool::Composite and not $table->{'VARS'}{'LOADED_USERDEFINED'} and %Image::ExifTool::UserDefined and $Image::ExifTool::UserDefined{$tableName})
9028 0 5230 unless $tagTablePtr and $dirInfo
9030 4801 429 unless $proc
9033 704 4526 unless ($dirName)
9035 186 518 if $dirName =~ /^APP\d+$/
9040 4420 49 if (defined $dirInfo->{'DirStart'} and defined $dirInfo->{'DataPos'} and $dirInfo->{'DirLen'} || !defined($dirInfo->{'DirLen'}))
9045 0 4420 if ($self->{'PROCESSED'}{$addr} and not $dirInfo->{'NotDup'})
9048 0 0 unless $dirName eq "GPS" and $self->{'PROCESSED'}{$addr} eq "InteropIFD"
9050 4420 0 unless $tagTablePtr->{'VARS'} and $tagTablePtr->{'VARS'}{'ALLOW_REPROCESS'}
9089 1897 142 if ($filename and $filename =~ /^.*\.([^.]+)$/s)
9093 34 1863 if $fileExt eq "TIF"
9108 0 610528 if ($Image::ExifTool::specialTags{$tagID}) { }
556576 53952 elsif (ref $tagInfo eq 'HASH') { }
11784 42168 elsif (ref $tagInfo eq 'ARRAY') { }
37641 4527 elsif ($tagInfo) { }
9144 14283 106136 if ($condition)
9145 879 13404 if @_ > 3
9146 695 13588 if $condition =~ /\$(valPt|format|count)\b/ and not defined $valPt
9151 11043 2545 unless (eval $condition)
9152 0 11043 if $@
9153 0 11043 if $Image::ExifTool::evalWarning
9158 1957 284 if ($tagInfo->{'Unknown'} and not $options->{'Unknown'} and !$self->{'IsWriting'} || $tagInfo->{'AddedUnknown'} and not $options->{'Verbose'} || $self->{'HTML_DUMP'} || $options->{'Validate'} && !$tagInfo->{'AddedUnknown'})
9169 589 4777 if (not $tagInfo and $options->{'Unknown'} || $options->{'Verbose'} || $self->{'HTML_DUMP'} and $tagID =~ /^\d+$/ and not $self->{'NO_UNKNOWN'}) { }
9173 155 434 if (defined $tagTablePtr->{'PRINT_CONV'}) { }
9211 0 0 $tagInfo ? :
0 7230 unless ref $tagInfo eq "HASH"
9214 496 6734 if ($tagInfo->{'Groups'}) { }
9217 954 534 if $tagInfo->{'Groups'}{$_}
9223 60 7170 if $tagInfo->{'Flags'}
9227 1854 5376 unless defined $tagInfo->{'Hidden'}
9228 1744 5486 if (defined $tagTablePtr->{'AVOID'} and not defined $tagInfo->{'Avoid'})
9233 516 6714 unless defined $name
9237 514 2 unless (defined $tagInfo->{'Name'} or $noPrefix or not $tagTablePtr->{'TAG_PREFIX'})
9243 13 7217 if length $name < 2 or not $name =~ /^[A-Z]/i
9247 7163 0 unless (defined $tagTablePtr->{$tagID} or $Image::ExifTool::specialTags{$tagID})
9249 0 0 if ($purgeFlag and $tagInfo->{'Unknown'} and not $tagInfo->{'SubDirectory'})
9253 1125 6105 if $tagInfo->{'Unknown'}
9271 7589 2182 defined $val ? :
9277 0 2195 if (not $tagInfo and defined $tagInfo and $dataPt)
9280 0 0 unless defined $size
9281 0 0 if $start + $size > length $$dataPt
9282 0 0 if $size > 1024
9286 7576 2195 if ($tagInfo) { }
0 2195 elsif ($parms{'MakeTagInfo'}) { }
9289 0 0 if $verbose
9294 0 0 if length $name < 2 or $name =~ /^[-0-9]/
9298 2195 0 unless $verbose
9303 0 578 unless (defined $val or $subdir and not $tagInfo->{'Writable'} and not $tagInfo->{'RawConv'})
9305 890 0 $dataPt ? :
9307 7 0 $dLen > 0 ? :
7 883 unless defined $size
9309 890 0 if ($start >= 0 and $start + $size <= $dLen) { }
9311 331 0 if not $format and $pfmt and $formatSize{$pfmt}
9312 452 438 if (not $format) { }
438 0 elsif (not $tagInfo->{'ByteOrder'}) { }
9321 0 890 if $self->{'OPTIONS'}{'SaveBin'}
9328 51 7525 if ($verbose)
9329 0 51 if $noTagInfo
9331 0 51 if defined $rational
9333 0 51 if ($format)
9339 7576 0 if ($tagInfo)
9340 753 6823 if ($subdir)
9341 0 12 if ($tagInfo->{'MakerNotes'} and $self->{'OPTIONS'}{'FastScan'} and $self->{'OPTIONS'}{'FastScan'} > 1)
9346 1 752 if ($tagInfo->{'RawConv'} and not $tagInfo->{'Writable'}) { }
13 739 elsif (not $dataPt) { }
9350 0 1 if (ref $conv eq 'CODE') { }
9357 0 1 if $@
9359 0 1 if $Image::ExifTool::evalWarning
9360 0 1 unless defined $val
9361 1 0 ref $val eq 'SCALAR' ? :
9365 1 12 ref $val eq 'SCALAR' ? :
9367 8 745 if ($subdir->{'Start'})
9391 3 750 if ($subdir->{'ByteOrder'})
9392 1 2 if ($subdir->{'ByteOrder'} eq 'Unknown') { }
9393 1 0 if ($subdirStart + 2 <= $subdirLen)
9396 1 0 if $num & 65280 and $num >> 8 > ($num & 255)
9406 753 0 unless $tagInfo->{'Writable'}
9409 6814 9 if (defined $key)
9411 12 6802 if defined $rational
9412 0 6814 if defined $binVal
9433 53662 7805 if (ref $tagInfo eq 'HASH') { }
9434 0 53662 unless $tag = $tagInfo->{'Name'}
9443 2 7803 unless $tagInfo
9444 39 7766 if $options->{'Verbose'}
9448 55161 6306 unless (defined $priority)
9450 55 53007 if not defined $priority and $tagInfo->{'Avoid'}
9452 61453 14 unless $grps[0]
9453 61453 14 unless $grps[1]
9454 0 61467 if ($options->{'IgnoreGroups'})
9457 0 0 if $options->{'IgnoreGroups'}{$g} or $options->{'IgnoreGroups'}{"$_$g"}
9462 9930 51537 if ($tagInfo->{'RawConv'})
9465 1840 0 if (ref $value eq "HASH" and $tagInfo->{'IsComposite'})
9471 241 9689 if (ref $conv eq 'CODE') { }
9473 0 241 if $self->{'grps'}
9479 0 9689 if $@
9481 0 9930 if $Image::ExifTool::evalWarning
9482 2735 7195 unless defined $value
9485 0 58732 if ($options->{'IgnoreTags'})
9486 0 0 if ($options->{'IgnoreTags'}{'all'}) { }
9487 0 0 unless $self->{'REQ_TAG_LOOKUP'}{lc $tag}
9489 0 0 if $options->{'IgnoreTags'}{lc $tag}
9493 7035 51697 if (defined $valueHash->{$tag}) { }
1915 49782 elsif ($priority) { }
9495 701 6334 if ($self->{'LIST_TAGS'}{$tagInfo})
9497 65 636 if (defined $self->{'NO_LIST'}) { }
9499 31 34 if (defined $self->{'TAG_EXTRA'}{$tag}{'NoList'}) { }
9506 319 317 if (ref $valueHash->{$tag} ne "ARRAY")
9523 5408 991 unless ($oldPriority)
9524 5373 35 if ($self->{'DOC_NUM'} or $tag eq 'Warning' or not $self->{'TAG_EXTRA'}{$tag}{'G3'}) { }
9531 2134 4265 if (defined $priority) { }
411 3854 elsif ($self->{'LOW_PRIORITY_DIR'}{'*'} or $self->{'DIR_NAME'} and $self->{'LOW_PRIORITY_DIR'}{$self->{'DIR_NAME'}}) { }
9534 40 1998 if not $priority and $self->{'DIR_NAME'} and $self->{'DIR_NAME'} eq $self->{'PRIORITY_DIR'}
9542 2957 3442 if ($priority >= $oldPriority and !$self->{'DOC_NUM'} || $self->{'TAG_EXTRA'}{$tag}{'G3'} && $self->{'DOC_NUM'} eq $self->{'TAG_EXTRA'}{$tag}{'G3'} and not $noListDel) { }
9555 7 2950 if $self->{'LIST_TAGS'}{$oldInfo}
9557 97 2860 if ($self->{'COMP_KEYS'}{$tag})
9566 65 6334 if $noListDel
9577 55074 3022 unless $self->{'TAG_EXTRA'}{$tag}
9579 517 57579 if $grps[0]
9580 4701 53395 if $grps[1]
9581 1798 56298 if ($self->{'DOC_NUM'})
9584 1798 0 if ($self->{'DOC_NUM'} =~ /^(\d+)/)
9586 33 1765 unless $self->{'DOC_COUNT'} >= $1
9590 258 57838 if $options->{'SavePath'}
9594 1166 181 if ($tagInfo->{'List'} and not $self->{'NO_LIST'} and not $noListDel)
9601 213 57883 if ($options->{'Validate'} and not ref $value)
9614 22 0 unless $self->{'PRIORITY_DIR'}
9623 0 13786 defined $fam ? :
9646 167 6 if (not ref $_[0]) { }
4 2 elsif (ref $_[0] eq 'ARRAY') { }
0 2 elsif (ref $_[0] eq 'HASH') { }
9670 627 49 unless ($self->{'FileType'} and not $self->{'DOC_NUM'})
9673 478 149 unless $fileType
9675 275 308 if (defined $ext and $ext ne $fileType and not $self->{'DOC_NUM'})
9677 10 250 if (ref $f eq "ARRAY" and ref $e eq "ARRAY" and $f->[0] eq $e->[0])
9679 4 6 if $f->[0] eq $fileType or not $Image::ExifTool::fileTypeLookup{$f->[0]}
9682 602 25 unless $mimeType
9684 21 606 unless $mimeType or $baseType eq "TIFF"
9685 617 10 unless (defined $normExt)
9687 351 266 unless defined $normExt
9690 627 0 unless $self->{'DOC_NUM'}
9704 12 6 if (defined $self->{'VALUE'}{'FileType'} and $fileType ne $self->{'VALUE'}{'FileType'})
9707 5 7 unless (defined $normExt)
9709 5 0 unless defined $normExt
9712 12 0 unless $mimeType
9713 5 7 if $mimeType
9714 0 12 if ($self->{'OPTIONS'}{'Verbose'})
9717 0 0 if $mimeType
9729 0 8 unless $mime =~ m[/] or $mime = $Image::ExifTool::mimeType{$mime}
9731 8 0 if (defined $old) { }
9749 4 12495 if ($self->{'OPTIONS'}{'Verbose'} and $self->{'OPTIONS'}{'Verbose'} > $level)
9752 0 4 unless $_[-1] =~ /\n$/
9764 1965 44 unless $self->{'OPTIONS'}{'Verbose'}
9765 0 44 if (ref $name eq "HASH")
9766 0 0 unless $size
9771 22 22 $entries || defined $entries && !$size ? :
9772 22 22 if $size
9773 11 33 if ($byteOrder and $self->{'OPTIONS'}{'Verbose'} > 2)
9774 11 0 &GetByteOrder() eq 'II' ? :
9787 0 1666 if ($verbose and $verbose > 2)
9791 0 0 $verbose < 5 ? :
0 0 $verbose < 4 ? :
9819 43 4 if ($tag)
9820 29 14 if ($tag eq "PreviewImage")
9828 32 2 if (!$options->{'Binary'} || $self->{'EXCL_TAG_LOOKUP'}{$lcTag} and not $options->{'Verbose'} and not $options->{'Validate'} and not $self->{'REQ_TAG_LOOKUP'}{$lcTag})
9835 5 10 unless ($self->{'RAF'}->Seek($offset, 0) and $self->{'RAF'}->Read($buff, $length) == $length)
9838 0 5 unless $tag
9839 0 5 if ($isPreview and not $self->{'BuildingComposite'}) { }
9868 33 2191 if not defined $size or $size > $maxLen
9872 0 2224 unless ($increment)
9879 0 2224 if ($unknown > 1 and defined $tagTablePtr->{'FIRST_ENTRY'}) { }
220 2004 elsif ($dirInfo->{'DataMember'}) { }
48 1956 elsif ($dirInfo->{'MixedTags'}) { }
9881 0 0 $size < 65536 ? :
9887 0 0 if @ftags
9896 0 57882 $a < 0 ? :
0 57882 $b < 0 ? :
9898 19 2205 if $verbose
9900 2224 0 if $unknown < 2
9906 18428 0 if ($tagTablePtr->{$index}) { }
0 0 elsif ($topIndex and $$tagTablePtr{$index - $topIndex}) { }
9908 789 17639 unless ($tagInfo)
9909 738 51 unless defined $tagInfo
9912 0 51 if ($entry < 0)
9914 0 0 if $entry < 0
9916 44 7 if $entry >= $size
9918 0 7 if $more > 128
9921 0 7 unless $tagInfo
9924 1 261 if $tagInfo->{'Unknown'} and $tagInfo->{'Unknown'} > $unknown || $index < $nextIndex
9926 0 0 unless $tagInfo = $self->GetTagInfo($tagTablePtr, $index - $topIndex)
9929 0 0 unless $unknown > 1
9930 0 0 if $index < $nextIndex
9931 0 0 unless $tagInfo = $self->GetTagInfo($tagTablePtr, $index)
9937 0 17645 if ($entry < 0)
9939 0 0 if $entry < 0
9942 304 17341 if $more <= 0
9945 9978 7363 if (not $format) { }
127 7236 elsif ($format eq 'string') { }
0 7236 elsif ($format eq 'pstring') { }
3354 3882 elsif (not $formatSize{$format}) { }
9955 3170 184 if ($format =~ /(.*)\[(.*)\]/) { }
184 0 elsif ($format =~ /^var_/) { }
9962 0 3170 if $@
9963 0 3170 if $count < 0
9967 0 3170 if ($format =~ s/^var_//)
9971 0 0 if ($dirInfo->{'VarFormatData'})
9976 0 0 if $tagInfo->{'LargeTag'} and $dirInfo->{'VarFormatData'}
9983 0 184 if ($format eq 'ustring') { }
0 184 elsif ($format eq 'pstring') { }
170 14 elsif ($format eq 'pstr32' or $format eq 'ustr32') { }
10 4 elsif ($format eq 'int16u') { }
3 1 elsif ($format eq 'ue7') { }
1 0 elsif ($$dataPt =~ /\0/g) { }
9984 0 0 if $$dataPt =~ /\G(..)*?\0\0/gs
9990 0 170 if $more < 4
9992 168 2 if $format eq "ustr32"
9998 0 10 if $more < 2
10005 0 3 unless defined $val
10011 0 184 if not defined $count or $count > $more
10013 181 3 unless (defined $val)
10015 168 13 if $format eq "ustring" or $format eq "ustr32"
10016 171 10 unless $format eq "undef"
10018 0 184 if $self->{'OPTIONS'}{'SaveBin'}
10021 5 179 if ($dirInfo->{'VarFormatData'})
10027 691 16650 if (defined $tagInfo->{'Hook'})
10033 322 369 if ($dirInfo->{'VarFormatData'}) { }
0 736 elsif ($varSize != $oldVarSize and $verbose > 2) { }
10034 0 322 if $wasVar
10038 0 0 if $tmp < 0
10042 0 17341 if ($unknown > 1)
10045 0 0 unless $wasVar
10047 0 0 unless $nextIndex > $ni
10051 0 17341 if $tagInfo->{'LargeTag'} and $self->{'EXCL_TAG_LOOKUP'}{lc $tagInfo->{'Name'}}
10053 17157 184 unless (defined $val and not $tagInfo->{'SubDirectory'})
10055 0 17157 unless defined $val
10057 454 16703 if $mask
10059 198 17143 if ($verbose and not $tagInfo->{'Hidden'})
10060 198 0 if (not $tagInfo->{'SubDirectory'} or $tagInfo->{'Format'}) { }
10062 0 198 if $len > $more
10066 2 196 $mask ? :
10078 0 17341 if $offAdj
10080 14 17327 if ($tagInfo->{'SubDirectory'})
10084 12 2 if ($tagInfo->{'Format'} and $formatSize{$format}) { }
10086 0 12 if $len > $more
10089 2 0 if ($subTablePtr->{'PROCESS_PROC'} and $subTablePtr->{'PROCESS_PROC'} eq \&Image::ExifTool::ProcessBinaryData)
10097 0 14 if (defined $subdir->{'Base'})
10104 0 14 if ($start =~ /\$/) { }
10106 0 0 unless $val
10109 0 0 if $start < $dirStart or $start > $dataLen
10111 0 0 unless $len and $len <= $dataLen - $start
10127 14 0 if $unknown < 2
10130 38 17289 if ($tagInfo->{'IsOffset'} and $tagInfo->{'IsOffset'} ne 3)
10133 19 19 if eval $tagInfo->{'IsOffset'}
10137 0 17327 if ($tagInfo->{'SetBase'})
10142 0 17327 if defined $oldBase
10143 15834 1493 if ($key) { }
10144 49 15785 if defined $rational
10145 0 15834 if defined $binVal
10148 0 1493 if defined $saveNextIndex