line |
true |
false |
branch |
64
|
1 |
6 |
@a ? : |
75
|
0 |
1 |
unless @rows |
77
|
0 |
1 |
unless @cols |
84
|
0 |
2 |
unless @cols == $ny |
88
|
0 |
4 |
unless defined $c |
103
|
123 |
6054 |
if (not $format or $format eq 1) |
104
|
123 |
0 |
if ($tagInfo->{'Groups'}{'0'} eq 'MakerNotes') { } |
122
|
0 |
11 |
if ($val =~ /[\x80-\xff]/) { } |
151
|
0 |
0 |
if ($proc ne \&Image::ExifTool::Exif::ProcessExif and $tagInfo->{'Name'} =~ /Text/ or $proc eq \&Image::ExifTool::ProcessBinaryData or $tagInfo->{'PossiblePreview'} and $dirLen > 6 and substr($$dataPt, $dirStart, 3) eq "\377\330\377") |
160
|
20 |
0 |
if (defined $loc) |
187
|
20 |
0 |
if (defined $rtnValue and length $rtnValue) |
189
|
2 |
18 |
if ($newTool->{'PREVIEW_INFO'}) |
195
|
8 |
12 |
if ($loc) |
201
|
0 |
8 |
if ($dirInfo->{'Parent'} eq "IFD0" and $hdr =~ /^(PENTAX |SAMSUNG)\0/) |
204
|
0 |
0 |
if ($et->{'Model'} =~ /\b(K(-[57mrx]|(10|20|100|110|200)D|2000)|GX(10|20))\b/) |
223
|
17 |
3 |
unless ($subdirInfo{'Relative'}) |
249
|
0 |
0 |
unless $tagID or $index == 0 or $allowZero |
251
|
0 |
0 |
if ($entries{$tagID}) { } |
275
|
0 |
0 |
unless my $raf = $dirInfo->{'RAF'} |
277
|
0 |
0 |
unless defined $dirStart |
280
|
0 |
0 |
unless $raf->Seek($offset + $base, 0) and $raf->Read($buff, 2) == 2 |
282
|
0 |
0 |
unless $numEntries > 1 and $numEntries < 64 |
284
|
0 |
0 |
unless $raf->Read($buff, $len) == $len |
289
|
0 |
0 |
unless $tagID > $lastID or $dirInfo->{'AllowOutOfOrderTags'} |
291
|
0 |
0 |
unless $format > 0 and $format <= 13 |
293
|
0 |
0 |
unless $count > 0 |
313
|
0 |
0 |
if $format < 1 or $format > 13 |
316
|
0 |
0 |
if ($size <= 4) |
318
|
0 |
0 |
unless ref $tagTablePtr->{$tagID} eq "HASH" and $tagTablePtr->{$tagID}{'FixCount'} |
321
|
0 |
0 |
if $offset >= $ifdEnd |
338
|
278 |
54 |
if (defined $et->{'TIFF_END'} and $et->{'TIFF_END'} < $end) |
358
|
5 |
1 |
if (!defined($vInfo->{'259'}) || $vInfo->{'259'} eq '1' and $vInfo->{'256'} and $vInfo->{'257'} and $vInfo->{'279'} || $vInfo->{'325'}) |
362
|
5 |
0 |
$vInfo->{'258'} ? : |
368
|
0 |
5 |
if $et->{'DOC_NUM'} or $et->{'FILE_TYPE'} ne "TIFF" |
369
|
0 |
5 |
unless (@bitsPerSample == $samplesPerPix) |
370
|
0 |
0 |
unless ($et->{'FILE_TYPE'} eq "EPS" and @bitsPerSample == 1) |
372
|
0 |
0 |
$samplesPerPix eq '1' ? : |
377
|
0 |
0 |
if $_ ne $bitsPerSample[0] |
378
|
0 |
0 |
if $_ < 1 or $_ > 32 |
384
|
1 |
4 |
if ($expectedBytes != $totalBytes and not $et->{'TIFF_TYPE'} =~ /^(K25|KDC|MEF|ORF|SRF)$/) |
389
|
1 |
0 |
if ($expectedBytes > $totalBytes) { } |
391
|
0 |
1 |
unless $errFlag |
397
|
1 |
0 |
if (not defined $minor) { } |
418
|
0 |
0 |
if ($tagTablePtr->{'VARS'} and $tagTablePtr->{'VARS'}{'MINOR_ERRORS'}) |
419
|
0 |
0 |
if $minor |
422
|
0 |
0 |
if $et->Error($errStr, $minor) |
434
|
0 |
0 |
unless $et |
442
|
0 |
0 |
unless $raf->Seek($base, 0) and $raf->Read($buff, 8) == 8 |
443
|
0 |
0 |
unless (&SetByteOrder(substr($buff, 0, 2)) and &Get16u(\$buff, 2) == $magic) |
445
|
0 |
0 |
if ($dirInfo->{'IsWriting'}) { } |
466
|
0 |
0 |
if ($dirInfo->{'IsWriting'}) |
471
|
0 |
0 |
unless $newDir |
475
|
0 |
0 |
if ($et->{'HTML_DUMP'}) |
476
|
0 |
0 |
&GetByteOrder() eq 'II' ? : |
498
|
7973 |
324 |
unless $et |
501
|
32 |
292 |
unless ($dataPt) |
523
|
154 |
8 |
unless $name and $dirName eq "MakerNotes" and not $name =~ /^MakerNote/ |
526
|
195 |
129 |
if $dirName eq "IFD0" or $dirName eq "ExifIFD" |
529
|
252 |
72 |
if $tagTablePtr->{'GROUPS'}{'0'} eq "EXIF" |
532
|
114 |
210 |
if $dirName =~ /^(IFD0|SubIFD)$/ and not defined $dirInfo->{'Multi'} |
533
|
71 |
253 |
if $tagTablePtr->{'GROUPS'}{'0'} eq "MakerNotes" |
549
|
115 |
257 |
if ($dirStart < 0 or $dirStart > $dataLen - 2) { } |
|
257 |
0 |
elsif ($dirLen >= 2) { } |
553
|
0 |
257 |
if $dirStart + $len > $dataLen |
556
|
115 |
257 |
if ($mustRead) |
557
|
38 |
77 |
if ($raf) { } |
|
0 |
154 |
elsif ($dirLen and $dirStart + 4 >= $dataLen) { } |
561
|
0 |
38 |
unless ($raf->Seek($offset + $base, 0) and $raf->Read($buff, 2) == 2) |
566
|
0 |
38 |
unless ($raf->Read($buf2, $len + 4) >= $len) |
580
|
38 |
0 |
if $dataLen == $len + 6 and $dirInfo->{'Multi'} || $buff =~ /\0{4}$/ |
585
|
0 |
0 |
$et->Options('IgnoreMinorErrors') ? : |
590
|
288 |
84 |
if ($dirStart + 4 < $dataLen) { } |
593
|
0 |
288 |
if ($dirEnd > $dataLen) |
596
|
0 |
0 |
unless $n and defined $rtn |
600
|
217 |
71 |
unless ($inMakerNotes) |
605
|
0 |
0 |
if ($tagID < $lastID and $tagID || $tagTablePtr->{'0'}) |
625
|
168 |
1870 |
ref $tagTablePtr->{$tagID} eq 'ARRAY' || $tagInfo->{'Condition'} ? : |
629
|
2 |
51 |
if ($dirName eq "MakerNotes" and $dirInfo->{'Parent'} =~ /^(ExifIFD|IFD0)$/ and not $et->{'TIFF_TYPE'} =~ /^(ARW|SR2)$/ and not $et->{'LeicaTrailerPos'} and &Image::ExifTool::MakerNotes::FixBase($et, $dirInfo)) |
637
|
0 |
2 |
if $et->{'FORCE_WRITE'}{'FixBase'} |
638
|
0 |
0 |
if ($et->{'TIFF_TYPE'} eq "SRW" and $et->{'Make'} eq "SAMSUNG" and $et->{'Model'} eq "EK-GN120") |
646
|
289 |
83 |
if ($mandatory) { } |
648
|
6 |
283 |
if ($dirName eq "IFD0" and defined $et->{'JFIFYResolution'}) |
657
|
84 |
205 |
unless ($numEntries) |
659
|
225 |
84 |
unless defined $set{$_} |
666
|
71 |
301 |
if ($inMakerNotes) { } |
673
|
5 |
36 |
unless $set{$_} |
675
|
0 |
36 |
if defined $perm and not $perm |
677
|
0 |
71 |
if @newTags > 1 |
701
|
0 |
372 |
if ($inMakerNotes and $et->{'Model'} eq "Canon EOS 40D") |
703
|
0 |
0 |
if ($fmt < 1 or $fmt > 13) |
716
|
5054 |
1984 |
if (defined $oldID and $oldID == $newID) |
720
|
4682 |
372 |
if ($index < $numEntries) { } |
726
|
0 |
4682 |
if ($oldFormat < 1 or $oldFormat > 13) |
731
|
0 |
0 |
if ($dirName eq "MakerNotes" and $et->{'Make'} =~ /KODAK/i && $dirInfo->{'Name'} && $dirInfo->{'Name'} eq 'SubIFD3' || $numEntries == 12 && $et->{'Make'} eq 'SONY' && $index >= 8) |
742
|
0 |
0 |
if ($oldFormat == 0 and $index and $oldCount == 0) |
745
|
0 |
0 |
if $dirInfo->{'FixBase'} |
759
|
580 |
4102 |
if (ref $oldInfo ne "HASH" or $oldInfo->{'Condition'}) |
767
|
0 |
2797 |
if ($oldCount < 2 and $oldInfo and $oldInfo->{'FixCount'}) |
768
|
0 |
0 |
unless $offList |
771
|
0 |
0 |
if (defined $i and $i < $#$offList) |
773
|
0 |
0 |
if $oldCount != $readCount |
778
|
2127 |
2555 |
if ($oldSize > 4) |
781
|
0 |
2127 |
if ($dirInfo->{'FixOffsets'}) |
782
|
0 |
0 |
unless $valEnd |
786
|
0 |
0 |
unless (defined $valuePtr) |
787
|
0 |
0 |
unless ($et->{'DropTags'}) |
788
|
0 |
0 |
$oldInfo ? : |
789
|
0 |
0 |
if $et->Error("Bad $name offset for $tagStr", $inMakerNotes) |
797
|
5 |
2122 |
if ($dirInfo->{'EntryBased'} or ref $tagTablePtr->{$oldID} eq 'HASH' and $tagTablePtr->{$oldID}{'EntryBased'}) { } |
805
|
0 |
2127 |
if $valuePtr < $dirEnd and $valuePtr + $oldSize > $dirStart |
807
|
226 |
1901 |
if ($valuePtr < 0 or $valuePtr + $oldSize > $dataLen) |
809
|
218 |
8 |
if ($oldInfo) { } |
|
8 |
0 |
elsif (defined $oldInfo) { } |
814
|
8 |
0 |
if ($tmpInfo) |
819
|
0 |
226 |
unless $tagStr |
821
|
0 |
226 |
unless ($raf) |
822
|
0 |
0 |
if ($tagStr eq 'PreviewImage') { } |
|
0 |
0 |
elsif ($leicaTrailer) { } |
824
|
0 |
0 |
if ($raf) { } |
826
|
0 |
0 |
if ($oldInfo and $oldInfo->{'ChangeBase'}) |
845
|
0 |
0 |
unless $oldInfo |
851
|
0 |
226 |
if ($oldSize > BINARY_DATA_LIMIT() and $origDirInfo->{'ImageData'} and !defined($oldInfo) || $oldInfo && (!$oldInfo->{'SubDirectory'} || $oldInfo->{'ReadFromRAF'})) { } |
|
226 |
0 |
elsif ($raf) { } |
|
0 |
0 |
elsif (not $invalidPreview) { } |
858
|
0 |
0 |
unless (defined $set{$oldID}) |
859
|
0 |
0 |
$oldSize & 1 ? : |
866
|
0 |
226 |
if (defined $pos) |
870
|
0 |
0 |
unless ($success and $oldValue =~ /^(\xff\xd8\xff|(.|.{33})\xd8\xff\xdb)/s) |
875
|
0 |
226 |
unless ($success) |
876
|
0 |
0 |
if $et->Error("Error reading value for $name entry $index", $inMakerNotes) |
880
|
0 |
0 |
if $et->Error("Bad $name offset for $tagStr", $inMakerNotes) |
883
|
0 |
226 |
if ($invalidPreview) { } |
885
|
0 |
0 |
if ($et->{'FILE_TYPE'} eq 'JPEG') { } |
905
|
2 |
2125 |
if ($suspect) |
906
|
2 |
0 |
$oldInfo ? : |
908
|
2 |
0 |
if ($inMakerNotes) { } |
911
|
0 |
0 |
if $et->Error($str, 1) |
916
|
4456 |
226 |
unless $readFromFile |
918
|
160 |
4522 |
if (defined $oldInfo and not $oldInfo) |
924
|
0 |
0 |
if ($mayDelete{$oldID} and $oldInfo and !@newTags || $newTags[0] != $oldID) |
926
|
0 |
0 |
if (not $nvHash and $wrongDir) |
929
|
0 |
0 |
if $nvHash |
931
|
0 |
0 |
if ($nvHash) |
939
|
0 |
4682 |
if ($oldFormat == 13 || $oldFormat == 18 and not $oldInfo && $oldInfo->{'SubIFD'}) |
946
|
4682 |
0 |
if ($oldInfo) |
948
|
0 |
4682 |
if ($oldInfo->{'IsOffset'} || $oldInfo->{'SubIFD'} and not $Image::ExifTool::Exif::intFormat{$oldFormName}) |
954
|
4 |
0 |
if ($oldInfo->{'Drop'} and $et->{'DropTags'} and $oldInfo->{'Drop'} == 1 || $oldInfo->{'Drop'} < $oldSize) |
959
|
289 |
4389 |
if ($oldInfo->{'Format'}) |
962
|
0 |
289 |
unless ($readFormat) |
967
|
0 |
289 |
if ($oldInfo->{'FixedSize'}) |
968
|
0 |
0 |
if $oldInfo->{'FixedSize'} |
975
|
0 |
4678 |
if ($oldID <= $lastTagID and not $inMakerNotes) |
976
|
0 |
0 |
$oldInfo ? : |
977
|
0 |
0 |
if ($oldID == $lastTagID) { } |
980
|
0 |
0 |
if defined $set{$oldID} |
996
|
2197 |
4837 |
if (not defined $oldID) { } |
|
3197 |
1640 |
elsif (not defined $newID) { } |
997
|
372 |
1825 |
unless defined $newID |
1001
|
35 |
3162 |
if (defined $set{$oldID}) { } |
1016
|
2267 |
4395 |
$isNew >= 0 ? : |
1019
|
2267 |
4395 |
if ($isNew >= 0) |
1023
|
110 |
68 |
unless ($curInfo or $addDirs->{$newID}) |
1028
|
24 |
86 |
if (defined $curInfo and not $curInfo) |
1033
|
430 |
25 |
unless $tagInfo->{'TagID'} == $newID |
1035
|
0 |
25 |
unless defined $val |
1038
|
24 |
1 |
if ($fmt) |
1040
|
0 |
24 |
unless defined $val |
1043
|
25 |
0 |
if ($curInfo) |
1044
|
21 |
4 |
if $curInfo eq $tagInfo |
1049
|
3 |
21 |
unless $curInfo |
1052
|
83 |
27 |
if ($curInfo and $et->{'NEW_VALUE'}{$curInfo}) { } |
1055
|
26 |
1 |
if $isNew > 0 |
1060
|
2172 |
69 |
if ($curInfo) { } |
|
1 |
68 |
elsif (not $addDirs->{$newID}) { } |
1061
|
6 |
2166 |
if ($curInfo->{'WriteCondition'}) |
1064
|
0 |
6 |
unless (eval $curInfo->{'WriteCondition'}) |
1065
|
0 |
0 |
if $@ |
1070
|
2172 |
0 |
if $isNew >= 0 |
1071
|
1097 |
1075 |
unless ($nvHash or defined $mandatory->{$newID}) |
1072
|
435 |
662 |
unless $wrongDir |
1076
|
28 |
634 |
unless $et->IsOverwriting($nvHash) |
1080
|
2 |
632 |
if (not defined $nvHash->{'Value'} and $nvHash->{'WantGroup'} and lc $nvHash->{'WantGroup'} eq lc $wrongDir) { } |
1090
|
463 |
3 |
if $isNew > 0 |
1094
|
1707 |
71 |
if ($set{$newID}) { } |
|
38 |
33 |
elsif ($isNew > 0) { } |
|
4 |
29 |
elsif ($newInfo->{'Format'} and $newInfo->{'Writable'} and $newInfo->{'Writable'} ne '1') { } |
|
0 |
31 |
elsif ($addDirs->{$newID} and $newInfo ne $addDirs->{$newID}) { } |
1102
|
1457 |
250 |
if ($isNew > 0) { } |
|
241 |
9 |
elsif ($nvHash or $xDelete{$newID}) { } |
1104
|
599 |
858 |
if ($nvHash) { } |
1105
|
83 |
516 |
unless $nvHash->{'IsCreating'} |
1106
|
1 |
515 |
if ($newInfo->{'IsOverwriting'}) { } |
1113
|
629 |
229 |
if $xDelete{$newID} |
1118
|
68 |
677 |
if ($newInfo->{'Format'}) { } |
1124
|
0 |
677 |
unless ($newFormName) |
1131
|
3 |
238 |
unless ($nvHash) |
1135
|
241 |
0 |
if (length $oldValue >= $oldSize) { } |
1143
|
2 |
239 |
unless $writable and $writable ne 1 |
1146
|
8 |
233 |
if ($writeForm ne $newFormName) |
1151
|
2 |
6 |
if ($inMakerNotes) { } |
|
2 |
4 |
elsif ($writable ne $newFormName) { } |
1159
|
26 |
9 |
if ($inMakerNotes and $readFormName ne "string" and $readFormName ne "undef") |
1163
|
1 |
240 |
if ($newInfo->{'IsOverwriting'}) { } |
1170
|
980 |
15 |
if ($isOverwriting) { } |
1171
|
749 |
231 |
unless defined $newVal |
1174
|
22 |
958 |
if (not defined $newVal or $xDelete{$newID} and not defined $nvHash->{'Shift'}) |
1175
|
0 |
20 |
if (not defined $newVal and $newInfo->{'RawConvInv'} and defined $nvHash->{'Value'}) |
1179
|
22 |
0 |
unless ($isNew) |
1185
|
19 |
939 |
if ($newCount and $newCount < 0) |
1192
|
0 |
958 |
unless (defined $newValue) |
1196
|
958 |
0 |
if (length $newValue) { } |
1199
|
0 |
751 |
if ($et->{'FILE_TYPE'} eq "JPEG" and length $newValue > 65436 and $newInfo->{'Name'} ne "PreviewImage") |
1202
|
0 |
0 |
$newInfo->{'MakerNotes'} ? : |
1206
|
1 |
957 |
if ($strEnc and $newFormName eq "string") |
1213
|
958 |
0 |
if ($isNew >= 0) |
1216
|
217 |
741 |
if (defined $allMandatory) |
1218
|
78 |
139 |
if ($nvHash) { } |
1225
|
13 |
945 |
if ($verbose > 1) |
1226
|
0 |
13 |
unless $isNew |
1227
|
0 |
13 |
if ($newInfo->{'OffsetPair'} and $newVal eq '4277010157') { } |
1230
|
8 |
5 |
$nvHash ? : |
1236
|
0 |
15 |
if $isNew > 0 |
1240
|
71 |
902 |
if ($ifdFormName) |
1251
|
0 |
38 |
unless $newInfo = $addDirs->{$newID} |
1254
|
0 |
38 |
if $newInfo->{'MakerNotes'} or $newInfo->{'Name'} eq "SubIFD" |
1256
|
13 |
25 |
if ($newInfo->{'SubDirectory'}{'TagTable'}) { } |
1266
|
34 |
4 |
if $newInfo->{'SubIFD'} |
1269
|
2 |
36 |
unless defined $newValue and length $newValue |
1271
|
32 |
4 |
if ($newInfo->{'SubIFD'}) { } |
1289
|
0 |
4 |
unless ($newFormName and $Image::ExifTool::Exif::formatNumber{$newFormName}) |
1305
|
4413 |
1024 |
if ($isNew < 0) |
1313
|
0 |
4413 |
if ($oldImageData) |
1319
|
5437 |
0 |
if ($newInfo) |
1323
|
8 |
5429 |
if ($newInfo->{'DataTag'} and $isNew >= 0) |
1326
|
4 |
4 |
unless (defined $offsetData{$dataTag} or $dataTag eq "LeicaTrailer") |
1332
|
4 |
0 |
if (defined $offsetData{$dataTag}) { } |
1334
|
2 |
2 |
if ($dataTag eq "PreviewImage") |
1336
|
2 |
0 |
if $len <= 4 |
1341
|
0 |
4 |
if ($err) |
1342
|
0 |
0 |
if $newInfo->{'IsOffset'} |
1351
|
43 |
5394 |
if ($newInfo->{'MakerNotes'}) { } |
|
433 |
4961 |
elsif ($newInfo->{'SubDirectory'} and $isNew <= 0 and not $isOverwriting and !defined($newInfo->{'Writable'}) || $newInfo->{'Writable'} and not $newInfo->{'ReadFromRAF'}) { } |
|
158 |
4803 |
elsif ($newInfo->{'OffsetPair'}) { } |
|
279 |
4524 |
elsif ($newInfo->{'DataMember'}) { } |
1353
|
1 |
0 |
if ($et->{'DEL_GROUP'}{'MakerNotes'} and $et->{'DEL_GROUP'}{'MakerNotes'} != 2 || $isNew <= 0) |
1356
|
0 |
1 |
if ($et->IsRawType) { } |
1359
|
1 |
0 |
if ($isNew <= 0) |
1361
|
0 |
1 |
if $verbose |
1367
|
7 |
35 |
if ($isNew >= 0 and defined $set{$newID}) { } |
1371
|
6 |
1 |
if ($nvHash and $nvHash->{'MAKER_NOTE_FIXUP'}) |
1394
|
35 |
0 |
if ($newInfo->{'SubDirectory'}) |
1396
|
4 |
31 |
if $sub->{'FixBase'} |
1399
|
5 |
30 |
if defined $sub->{'Base'} |
1401
|
34 |
1 |
if $sub->{'ByteOrder'} |
1404
|
35 |
0 |
if ($oldInfo and $oldInfo->{'SubDirectory'}) { } |
1406
|
35 |
0 |
if $subTable |
1412
|
35 |
0 |
if $subTable |
1413
|
0 |
35 |
unless $subTable |
1414
|
0 |
35 |
if ($writeProc and $writeProc eq \&Image::ExifTool::MakerNotes::WriteUnknownOrPreview and $oldValue =~ /^\xff\xd8\xff/) { } |
|
33 |
2 |
elsif (not $notIFD) { } |
1423
|
33 |
2 |
if (defined $loc) { } |
|
1 |
1 |
elsif ($subTable->{'PROCESS_PROC'} and $subTable->{'PROCESS_PROC'} eq \&Image::ExifTool::ProcessBinaryData) { } |
|
1 |
0 |
elsif ($notIFD) { } |
1429
|
1 |
32 |
if ($changed == $et->{'CHANGED'} and $subdirInfo{'Fixup'}->IsEmpty) |
1437
|
1 |
0 |
if (defined $sub->{'Start'}) { } |
1449
|
1 |
0 |
if ($writeProc) |
1455
|
0 |
0 |
if ($et->{'FILE_TYPE'} eq 'JPEG') { } |
1461
|
34 |
1 |
if (defined $subdir) |
1462
|
0 |
34 |
unless length $subdir |
1469
|
5 |
29 |
if ($subdirInfo{'Relative'}) { } |
|
29 |
0 |
elsif (not defined $subdirInfo{'Relative'}) { } |
1476
|
1 |
4 |
if ($previewInfo) |
1479
|
1 |
1 |
unless /_PreviewImage$/ |
1496
|
1 |
28 |
if ($subdirInfo{'AutoFix'}) { } |
|
0 |
28 |
elsif ($subdirInfo{'FixBase'} and $baseShift < 0 and !$subdirInfo{'MinOffset'} || $subdirInfo{'MinOffset'} + $baseShift < 0) { } |
1503
|
0 |
0 |
if (not defined $fixBase) { } |
|
0 |
0 |
elsif ($fixBase eq '') { } |
1504
|
0 |
0 |
$et->Options('IgnoreMinorErrors') ? : |
1516
|
4 |
25 |
if ($previewInfo and not $previewInfo->{'NoBaseShift'}) |
1533
|
106 |
327 |
if ($newInfo->{'SubIFD'}) { } |
|
327 |
0 |
elsif (!defined($subdir->{'Start'}) || $subdir->{'Start'} =~ /\$valuePtr/ and $subdir->{'TagTable'}) { } |
1538
|
15 |
91 |
if ($subdir->{'TagTable'}) |
1544
|
8 |
98 |
if $subTable->{'GROUPS'}{'0'} eq "MakerNotes" |
1547
|
0 |
106 |
unless ($readCount) |
1548
|
0 |
0 |
if $et->Error("$name entry $index has zero count", 2) |
1561
|
109 |
0 |
if (defined $subdir->{'Start'}) |
1564
|
0 |
109 |
unless (&Image::ExifTool::IsInt($newStart)) |
1572
|
0 |
109 |
if ($subdir->{'Base'}) |
1578
|
3 |
106 |
if $i |
1587
|
67 |
42 |
$imageDataFlag eq 'Main' ? : |
1596
|
55 |
54 |
if $newInfo->{'SubIFD'} == 2 |
1597
|
0 |
109 |
if ($subdir->{'RelativeBase'}) |
1603
|
15 |
94 |
if ($subdirStart < 0 or $subdirStart + 2 > $dataLen) |
1604
|
15 |
0 |
if ($raf) { } |
1611
|
0 |
0 |
if ($subTable->{'VARS'} and $subTable->{'VARS'}{'MINOR_ERRORS'}) { } |
|
0 |
0 |
elsif ($et->Error(@err)) { } |
1620
|
0 |
109 |
unless (defined $subdirData) |
1622
|
0 |
0 |
unless $et->{'VALUE'}{'Error'} |
1626
|
0 |
0 |
if ($hdrLen and $hdrLen > 0 and $subdirStart <= $dataLen) |
1630
|
6 |
103 |
unless (length $subdirData) |
1631
|
6 |
0 |
unless $inMakerNotes |
1639
|
4 |
99 |
if (ref $subdirInfo{'ImageData'}) |
1647
|
5 |
98 |
if ($readCount > 1) { } |
1665
|
6 |
100 |
unless length $newValue |
1668
|
0 |
100 |
if ($writeCount < $readCount and $writeCount == 1) |
1686
|
4 |
323 |
if ($subdir->{'Start'}) |
1693
|
1 |
326 |
if ($subdir->{'Base'}) |
1712
|
0 |
327 |
unless ($oldSize) |
1723
|
21 |
306 |
if $subdir->{'ByteOrder'} |
1726
|
266 |
61 |
if (defined $newValue) { } |
1728
|
3 |
263 |
if ($hdrLen) |
1736
|
1 |
326 |
unless (length $$newValuePt) |
1738
|
1 |
0 |
if $oldSize or not $inMakerNotes |
1740
|
5 |
321 |
if ($subFixup->{'Pointers'} and $subdirInfo{'Base'} == $base) { } |
1754
|
10 |
148 |
if ($dataTag eq 'CanonVRD') { } |
|
7 |
141 |
elsif ($dataTag eq 'OriginalDecisionData') { } |
1757
|
1 |
9 |
if ($et->{'NEW_VALUE'}{$Image::ExifTool::Extra{'CanonVRD'}}) { } |
|
0 |
9 |
elsif ($et->{'DEL_GROUP'}{'CanonVRD'} or $et->{'DEL_GROUP'}{'Trailer'}) { } |
1759
|
1 |
0 |
$et->GetNewValue('CanonVRD') ? : |
1767
|
1 |
9 |
if ($hasVRD) { } |
1781
|
1 |
6 |
if ($oddInfo and $et->{'NEW_VALUE'}{$oddInfo}) { } |
|
1 |
5 |
elsif ($$newValuePt ne "\000\000\000\000") { } |
1783
|
0 |
1 |
if ($verbose > 1) |
1784
|
0 |
0 |
if $$newValuePt ne "\0\0\0\0" |
1785
|
0 |
0 |
if $odd |
1789
|
1 |
0 |
if (length $$newValuePt == 4) { } |
1793
|
0 |
1 |
unless $et->{'FILE_TYPE'} eq "JPEG" |
1795
|
1 |
0 |
if ref $odd |
1800
|
2 |
5 |
if ($odd) { } |
1803
|
1 |
1 |
if $et->{'FILE_TYPE'} eq "JPEG" |
1815
|
137 |
4 |
if ($isNew <= 0) |
1818
|
0 |
137 |
if $newInfo->{'ByteOrder'} |
1821
|
68 |
69 |
unless $newInfo->{'IsOffset'} |
1824
|
0 |
0 |
if ($Image::ExifTool::Exif::formatSize[$newFormat] != 4 and $newInfo->{'IsOffset'}) |
1825
|
0 |
0 |
if $isNew > 0 |
1826
|
0 |
0 |
if $newCount != $readCount |
1831
|
0 |
0 |
unless (defined $newValue) |
1837
|
70 |
71 |
unless $offsetInfo |
1842
|
0 |
141 |
unless $newCount |
1853
|
0 |
279 |
if ($newInfo->{'Format'} and $newInfo->{'Format'} ne $formatStr) |
1857
|
0 |
0 |
if $format |
1861
|
279 |
0 |
if ($conv) { } |
1863
|
0 |
279 |
if (ref $conv eq 'CODE') { } |
1883
|
5429 |
0 |
unless $oldInfo and $oldInfo->{'FixedSize'} |
1884
|
153 |
5276 |
if ($Image::ExifTool::Exif::saveForValidate{$newID} and $tagTablePtr eq \%Image::ExifTool::Exif::Main) |
1888
|
2469 |
2960 |
if ($newSize > 4) { } |
1896
|
5 |
2464 |
if ($dirInfo->{'EntryBased'} or $newInfo and $newInfo->{'EntryBased'}) { } |
1903
|
2469 |
0 |
if $newInfo |
1904
|
2 |
2467 |
if ($dataTag) |
1905
|
1 |
1 |
if ($dataTag eq 'PreviewImage' and $et->{'FILE_TYPE'} eq 'JPEG' || $et->{'GENERATE_PREVIEW_INFO'}) { } |
|
0 |
1 |
elsif ($dataTag eq 'LeicaTrailer' and $et->{'LeicaTrailer'}) { } |
1910
|
1 |
0 |
unless $et->{'PREVIEW_INFO'} |
1913
|
0 |
1 |
if $newInfo->{'ChangeBase'} |
1914
|
0 |
1 |
if ($newInfo->{'IsOffset'} and $newInfo->{'IsOffset'} eq 2) |
1918
|
0 |
1 |
if $$newValuePt eq "LOAD_PREVIEW" |
1924
|
1 |
2468 |
if ($putFirst and $dirInfo->{'HeaderPtr'}) { } |
1932
|
5 |
2463 |
if ($entryBased) { } |
1933
|
1 |
4 |
unless $entryBasedFixup |
1942
|
1919 |
1041 |
if $newSize < 4 |
1949
|
278 |
184 |
if (defined $mandatory->{$newID}) |
1953
|
269 |
9 |
if (defined $mandVal and $mandVal eq $$newValuePt) |
1962
|
80 |
292 |
if (%validateInfo) |
1966
|
0 |
372 |
if ($ignoreCount) |
1967
|
0 |
0 |
$ignoreCount > 1 ? : |
1968
|
0 |
0 |
$dirInfo->{'FixBase'} ? : |
1971
|
0 |
372 |
if ($fixCount) |
1972
|
0 |
0 |
$fixCount > 1 ? : |
1980
|
288 |
84 |
if ($dirEnd + 4 <= $dataLen) { } |
1994
|
14 |
3 |
if ($allMandatory and not $isNextIFD and $newEntries < $numEntries || $numEntries == 0) |
1999
|
13 |
1 |
if defined $deleteAll |
2000
|
0 |
14 |
if $verbose > 1 |
2003
|
1 |
371 |
if ($ifd and not $newEntries) |
2004
|
0 |
1 |
if $verbose |
2008
|
1 |
370 |
if ($entryBasedFixup) |
2016
|
53 |
318 |
if ($dirName eq "MakerNotes" and $dirInfo->{'Parent'} =~ /^(ExifIFD|IFD0)$/) |
2018
|
13 |
40 |
if defined $pad and $pad == 0 || $pad > 4 && $pad <= 32 |
2025
|
47 |
324 |
if ($nextIfdPos) |
2031
|
364 |
7 |
length $nextIFD ? : |
2037
|
118 |
253 |
if (@subdirs) |
2042
|
135 |
0 |
if ($subdirFixup) |
2049
|
4 |
131 |
if (ref $imageData) |
2053
|
4 |
0 |
if ($subFix) |
2067
|
5 |
130 |
if $subdir->{'Where'} eq "valBuff" |
2070
|
0 |
135 |
unless (&Get32u(\$newData, $offset) == 4277006349) |
2081
|
358 |
13 |
if ($dirFixup) |
2093
|
322 |
49 |
unless $isNextIFD |
2094
|
42 |
7 |
if ($nextIfdOffset) { } |
2099
|
0 |
7 |
if $verbose |
2106
|
49 |
0 |
$dirName =~ s/(\d+)$// ? : |
2111
|
7 |
42 |
unless $nextIfdOffset |
2115
|
0 |
42 |
if ($et->{'PROCESSED'}{$addr}) |
2121
|
0 |
42 |
if ($dirName eq "SubIFD1" and not &ValidateIFD($dirInfo, $dirStart)) |
2122
|
0 |
0 |
if ($et->{'TIFF_TYPE'} eq 'TIFF') { } |
|
0 |
0 |
elsif ($verbose) { } |
2129
|
1 |
41 |
if ($et->{'DEL_GROUP'}{$dirName}) { } |
2130
|
0 |
1 |
if $verbose |
2131
|
0 |
1 |
if $raf |
2134
|
0 |
1 |
if ($et->{'DEL_GROUP'}{$dirName} == 2 and $et->{'ADD_DIRS'}{$dirName}) { } |
2145
|
0 |
41 |
if $verbose |
2165
|
60 |
264 |
if (@offsetInfo) |
2171
|
102 |
60 |
if ($ifd >= 0) { } |
2172
|
32 |
70 |
unless my $offsetInfo = $offsetInfo[$ifd] |
2175
|
1 |
22 |
if ($stripOffsets and $stripOffsets->[0]{'PanasonicHack'}) |
2178
|
0 |
1 |
if $err |
2185
|
70 |
70 |
unless $tagInfo->{'IsOffset'} |
2187
|
0 |
70 |
unless $sizeInfo |
2190
|
24 |
46 |
if ($raf and defined $origDirInfo->{'ImageData'} and $tagID == 273 || $tagID == 324 || $sizeInfo->[3][0] && $sizeInfo->[3][0] * scalar(@{$sizeInfo->[3];}) > 1000000 and not defined $dataTag && defined $offsetData{$dataTag}) { } |
2205
|
43 |
17 |
unless @writeLater |
2213
|
0 |
70 |
unless ($count == $count2) |
2219
|
0 |
70 |
if $count > 1 |
2221
|
0 |
70 |
if $n > 4 |
2222
|
0 |
70 |
if ($byteCounts < 0 or $byteCounts + $n > length $newData) |
2228
|
2 |
68 |
if ($tagInfo->{'IsOffset'} eq '2') { } |
2236
|
0 |
70 |
if ($tagInfo->{'WrongBase'}) { } |
2248
|
0 |
70 |
if $tagInfo->{'ByteOrder'} |
2252
|
68 |
2 |
if (@$oldOffset and @$oldSize) |
2260
|
1 |
69 |
if ($tagInfo->{'PanasonicHack'}) { } |
2268
|
68 |
2 |
if (defined $offset) { } |
|
0 |
2 |
elsif ($size != 4277010157) { } |
2277
|
4 |
66 |
if ($size == 4277010157) { } |
|
24 |
42 |
elsif ($ifd < 0) { } |
|
37 |
5 |
elsif ($offset >= 0 and $offset + $size <= $dataLen) { } |
|
0 |
5 |
elsif ($et->{'TIFF_TYPE'} eq 'MRW') { } |
|
4 |
1 |
elsif ($raf and $raf->Seek($offset + $dbase + $dpos, 0) and $raf->Read($buff, $size) == $size) { } |
|
0 |
1 |
elsif ($tagInfo->{'Name'} eq 'ThumbnailOffset' and $offset >= 0 and $offset < $dataLen) { } |
|
1 |
0 |
elsif ($tagInfo->{'Name'} eq 'PreviewImageStart' and $et->{'FILE_TYPE'} eq 'JPEG') { } |
2278
|
0 |
4 |
unless (defined $dataTag) |
2282
|
0 |
4 |
unless (defined $offsetData{$dataTag}) |
2286
|
0 |
4 |
if ($count > 1) |
2291
|
0 |
4 |
if ($Image::ExifTool::Exif::formatSize[$format] != 4) |
2301
|
0 |
0 |
if $blockSize + $size & 1 and $n + 1 >= $count || !$oldEnd || $oldEnd != $$oldOffset[$n + 1] |
2304
|
0 |
0 |
if ($origDirInfo->{'PreserveImagePadding'} and $n + 1 < $count and $oldEnd and $$oldOffset[$n + 1] > $oldEnd) |
2313
|
4 |
20 |
if ($imageDataFlag eq "SubIFD" and not $subIfdDataFixup) |
2326
|
0 |
0 |
$n & 3 ? : |
2329
|
0 |
0 |
unless defined $ttwLen |
2336
|
0 |
0 |
if ($et->{'TIFF_TYPE'} eq "ARW" and $tagInfo->{'Name'} eq "ThumbnailOffset" and $et->{'Model'} eq "DSLR-A100" and not $buff =~ /^\xff\xd8\xff/) |
2341
|
0 |
0 |
if ($pos < 65536 and $raf->Seek($pos + 65536, 0) and $raf->Read($try, $size) == $size and $try =~ /^\xff\xd8\xff/) { } |
2356
|
0 |
0 |
unless (&WriteValue($size, $formatStr, 1, \$newData, $byteCountPos)) |
2365
|
1 |
0 |
if ($r and not $raf) |
2368
|
1 |
0 |
unless $r->Seek($offset + $base + $dataPos, 0) and $r->Read($buff, $size) == $size and $buff =~ /^.\xd8\xff[\xc4\xdb\xe0-\xef]/s |
2371
|
0 |
1 |
unless $r->Seek($tell, 0) |
2374
|
1 |
0 |
unless defined $buff |
2377
|
0 |
0 |
if $et->Error("Error reading $dataName data in $name", $inMakerNotes) |
2380
|
14 |
56 |
if ($tagInfo->{'Name'} eq "PreviewImageStart") |
2381
|
8 |
6 |
if ($et->{'FILE_TYPE'} eq 'JPEG' and not $tagInfo->{'MakerPreview'}) { } |
|
0 |
12 |
elsif ($et->{'TIFF_TYPE'} eq 'ARW' and $et->{'Model'} eq 'DSLR-A100') { } |
2384
|
7 |
1 |
unless $et->{'PREVIEW_INFO'} |
2387
|
2 |
6 |
if ($tagInfo->{'IsOffset'} and $tagInfo->{'IsOffset'} eq 2) |
2390
|
7 |
1 |
if ($offset >= 0 and $offset + $size <= $dataLen) |
2398
|
0 |
0 |
if $et->{'A100PreviewLength'} |
2399
|
0 |
0 |
if defined $buff |
2407
|
4 |
66 |
if $subIfdDataFixup |
2410
|
0 |
0 |
if ($otherPos and $tagInfo->{'PanasonicHack'}) |
2414
|
46 |
24 |
if ($ifd >= 0) { } |
2416
|
1 |
45 |
if length $buff & 1 |
2426
|
0 |
60 |
if (defined $ttwLen and $ttwLen != length $newData) |
2436
|
0 |
28 |
if (defined $entry) |
2438
|
0 |
0 |
if ($format < 1 or $format > 13) { } |
2447
|
0 |
0 |
if ($imageDataFlag eq "SubIFD") |
2458
|
4 |
4 |
if ($subFix and defined $subFix->{'BlockLen'} and $numBlocks > 0) |
2471
|
122 |
202 |
unless ($dirInfo->{'Fixup'}) |
2473
|
119 |
3 |
$hdrPtr ? : |
2480
|
122 |
0 |
if ($newDataPos) |
2485
|
0 |
122 |
if $et->{'LeicaTrailer'} |
2488
|
6 |
116 |
if ($previewInfo) { } |
|
6 |
110 |
elsif (defined $newData and $deleteAll) { } |
|
0 |
110 |
elsif ($et->{'A100PreviewLength'}) { } |
2492
|
5 |
1 |
if ($$pt ne 'LOAD_PREVIEW' and length($$pt) + length($newData) + 14 <= 65533 and not $previewInfo->{'IsTrailer'} or $previewInfo->{'IsShort'}) { } |
2500
|
0 |
5 |
if ($previewInfo->{'Relative'}) |
2507
|
0 |
5 |
unless $et->{'PREVIEW_INFO'}{'WasContained'} |
2512
|
0 |
1 |
unless $previewInfo->{'Fixup'} |
2522
|
4 |
118 |
if ($newDataPos == 16) |
2528
|
0 |
122 |
if ($key) |
2532
|
0 |
0 |
if ($start and $start - 8 + $len <= length $newData) |
2540
|
13 |
311 |
if defined $newData and length $newData < 12 |
2543
|
0 |
311 |
if defined $newData and length $newData and $et->{'FORCE_WRITE'}{'EXIF'} |