| line |
true |
false |
branch |
|
142
|
0 |
0 |
if (@v == 2 or @v == 3) |
|
146
|
0 |
0 |
$below ? : |
|
|
0 |
0 |
if @v == 3 |
|
149
|
0 |
0 |
if $val =~ m[^([-+]\d+(\.\d*)?){2,3}(CRS.*)?/?$] |
|
162
|
0 |
0 |
if (@a == 2 or @a == 3) |
|
171
|
0 |
0 |
unless &Image::ExifTool::IsFloat($_) |
|
172
|
0 |
0 |
length $3 < 3 ? : |
|
176
|
0 |
0 |
if $val =~ m[^([-+]\d+(\.\d*)?){2,3}(CRS.*)?/?$] |
|
193
|
0 |
3 |
if $len < 8 |
|
201
|
0 |
3 |
unless $ok{$noff} and $ok{$nlen} and $ok{$nbas} and $ok{$nind} |
|
203
|
3 |
0 |
$noff == 4 ? : |
|
204
|
3 |
0 |
if ($ver < 2) { } |
|
208
|
0 |
0 |
if $len < 10 |
|
213
|
9 |
0 |
if ($ver < 2) { } |
|
214
|
0 |
9 |
if $pos + 2 > $len |
|
218
|
0 |
0 |
if $pos + 4 > $len |
|
223
|
0 |
9 |
if ($ver == 1 or $ver == 2) |
|
224
|
0 |
0 |
if $pos + 2 > $len |
|
230
|
0 |
9 |
if $pos + 2 > $len |
|
232
|
0 |
9 |
if ($drefIdx) |
|
233
|
0 |
0 |
if ($et->{'QtDataRef'} and $et->{'QtDataRef'}[$drefIdx - 1]) { } |
|
236
|
0 |
0 |
unless $dref->[1] == 1 and $dref->[0] ne "rsrc" |
|
245
|
6 |
3 |
if ($base_offset and not $constOff) |
|
246
|
6 |
0 |
$nbas == 4 ? : |
|
249
|
0 |
9 |
if $pos + 2 > $len |
|
255
|
0 |
9 |
if $ver == 1 or $ver == 2 |
|
257
|
0 |
9 |
unless defined $extent_offset |
|
258
|
9 |
0 |
unless ($constOff) |
|
259
|
9 |
0 |
if $noff |
|
260
|
9 |
0 |
if not defined $minOffset or $minOffset > $extent_offset |
|
262
|
0 |
9 |
if $pos + $nlen > length $$dataPt |
|
267
|
3 |
6 |
if (defined $minOffset and $minOffset > $base_offset) { } |
|
285
|
0 |
96 |
unless $langCode |
|
288
|
96 |
0 |
unless defined $writable |
|
289
|
0 |
96 |
unless $writable |
|
303
|
147 |
427 |
unless $format |
|
315
|
2 |
20 |
if ($format and $format ne 'string' or not $format and $writable and $writable ne 'string') { } |
|
|
0 |
20 |
elsif ($$valPt =~ /^\xff\xd8\xff/) { } |
|
|
0 |
20 |
elsif ($$valPt =~ /^(\x89P|\x8aM|\x8bJ)NG\r\n\x1a\n/) { } |
|
|
0 |
20 |
elsif ($$valPt =~ /^BM.{15}\0/s) { } |
|
317
|
0 |
2 |
if ($writable and $qtFormat{$writable}) { } |
|
342
|
6 |
0 |
if ($n == 4) { } |
|
|
0 |
0 |
elsif ($n == 8) { } |
|
357
|
174 |
9 |
unless $et |
|
363
|
0 |
9 |
if $dirLen < 8 |
|
364
|
3 |
6 |
if ($et->{'DEL_GROUP'}{'Keys'}) |
|
369
|
0 |
3 |
$n == 1 ? : |
|
380
|
0 |
15 |
if $len < 8 or $pos + $len > $dirLen |
|
384
|
15 |
0 |
if $ns eq "mdta" |
|
385
|
0 |
15 |
unless $tag |
|
388
|
15 |
0 |
if ($tagInfo) |
|
390
|
2 |
13 |
if ($newTags->{$tag}) |
|
393
|
1 |
1 |
if ($nvHash and $et->IsOverwriting($nvHash) > 0 and not defined $et->GetNewValue($nvHash)) |
|
397
|
6 |
0 |
unless $newTags->{$t}{'SrcTagInfo'} and $newTags->{$t}{'SrcTagInfo'} eq $tagInfo |
|
399
|
0 |
0 |
unless $et->IsOverwriting($nv) and defined $et->GetNewValue($nv) |
|
403
|
1 |
0 |
unless ($dontDelete) |
|
423
|
1 |
11 |
if ($tagInfo->{'LangCode'} and $tagInfo->{'SrcTagInfo'}) { } |
|
428
|
3 |
9 |
if $done{$id} |
|
430
|
0 |
5 |
unless $nvHash->{'IsCreating'} and $et->IsOverwriting($nvHash) and defined $et->GetNewValue($nvHash) |
|
433
|
0 |
5 |
$id =~ /^com\./ ? : |
|
440
|
8 |
1 |
if ($num) { } |
|
467
|
0 |
3 |
unless $items and $raf |
|
474
|
0 |
9 |
unless defined $primary |
|
477
|
6 |
3 |
unless $item->{'RefersTo'} and $item->{'RefersTo'}{$primary} |
|
481
|
0 |
3 |
unless $name |
|
482
|
0 |
3 |
unless $et->{'EDIT_DIRS'}{$name} |
|
485
|
0 |
3 |
unless $boxPos->{'iloc'} |
|
486
|
0 |
3 |
unless $item->{'Extents'} and @{$item->{'Extents'};} |
|
487
|
0 |
3 |
if $item->{'ContentEncoding'} |
|
488
|
0 |
3 |
if $item->{'ProtectionIndex'} |
|
489
|
0 |
3 |
if $item->{'ConstructionMethod'} |
|
490
|
0 |
3 |
if $item->{'DataReferenceIndex'} |
|
491
|
0 |
3 |
if $warn |
|
495
|
0 |
3 |
if defined $buff |
|
497
|
2 |
1 |
if ($extent->[2]) { } |
|
498
|
0 |
2 |
unless $raf->Seek($pos, 0) |
|
499
|
0 |
2 |
unless $raf->Read($buff, $extent->[2]) |
|
505
|
0 |
3 |
unless defined $buff |
|
506
|
0 |
3 |
if length $val |
|
508
|
1 |
2 |
if ($name eq 'EXIF') { } |
|
509
|
0 |
1 |
if (not length $buff) { } |
|
|
0 |
1 |
elsif ($buff =~ /^(MM\0\x2a|II\x2a\0)/) { } |
|
|
1 |
0 |
elsif (length $buff >= 4 and length $buff >= 4 + unpack('N', $buff)) { } |
|
535
|
3 |
0 |
if (defined $newVal and $changed ne $et->{'CHANGED'} and $dirInfo{'DirLen'} || length $newVal) |
|
539
|
1 |
2 |
if length $hdr and length $newVal |
|
547
|
0 |
3 |
if ($nlen == 8) { } |
|
|
3 |
0 |
elsif ($n <= 4294967295) { } |
|
557
|
0 |
3 |
if (@{$item->{'Extents'};} != 1) |
|
568
|
4 |
2 |
if $did{$name} or not $et->{'ADD_DIRS'}{$name} |
|
571
|
0 |
2 |
if (@missing) |
|
572
|
0 |
0 |
@missing > 1 ? : |
|
576
|
0 |
2 |
unless (defined $et->{'PrimaryItem'}) |
|
577
|
0 |
0 |
unless (defined $primary) |
|
582
|
0 |
0 |
if ($primary < 65536) { } |
|
591
|
1 |
1 |
if ($name eq 'EXIF') { } |
|
607
|
2 |
0 |
if (defined $newVal and $changed ne $et->{'CHANGED'}) |
|
609
|
2 |
0 |
if ($boxPos->{'iref'}) { } |
|
613
|
0 |
0 |
$primary < 65536 ? : |
|
616
|
1 |
1 |
if length $hdr |
|
618
|
2 |
0 |
unless defined $add{'iinf'} |
|
620
|
1 |
1 |
if ($name eq 'XMP') { } |
|
630
|
2 |
0 |
if ($id < 65536) { } |
|
637
|
0 |
2 |
if ($irefVer) { } |
|
650
|
2 |
0 |
if ($ilocVer == 0) { } |
|
|
0 |
0 |
elsif ($ilocVer == 1) { } |
|
|
0 |
0 |
elsif ($ilocVer == 2) { } |
|
671
|
0 |
2 |
unless my $off = $dirInfo->{'ChunkOffset'} |
|
673
|
2 |
0 |
if ($noff == 4) { } |
|
|
0 |
0 |
elsif ($noff == 8) { } |
|
|
0 |
0 |
elsif ($noff == 0) { } |
|
679
|
0 |
0 |
if ($nbas == 4) { } |
|
|
0 |
0 |
elsif ($nbas == 8) { } |
|
699
|
2 |
1 |
if ($countNew) |
|
705
|
6 |
6 |
unless $add{$tag} |
|
707
|
6 |
0 |
$boxPos->{$tag}[1] ? : |
|
708
|
0 |
0 |
unless $tag eq "iref" |
|
716
|
2 |
4 |
if ($tag eq 'iinf') { } |
|
|
2 |
2 |
elsif ($tag eq 'iref') { } |
|
|
2 |
0 |
elsif ($tag eq 'iloc') { } |
|
|
0 |
0 |
elsif ($tag ne 'hdlr') { } |
|
718
|
0 |
2 |
if ($iinfVer == 0) { } |
|
729
|
2 |
0 |
if ($ilocVer < 2) { } |
|
737
|
0 |
2 |
if ($added) |
|
749
|
3 |
0 |
@mdatEdit ? : |
|
763
|
501 |
305 |
unless $et |
|
776
|
287 |
18 |
$dataPt ? : |
|
778
|
287 |
18 |
if ($dataPt) { } |
|
781
|
0 |
18 |
unless $raf |
|
787
|
56 |
249 |
if $dirStart |
|
793
|
8 |
297 |
if ($addDirs->{'Keys'} and $curPath =~ /^MOV-Movie(-Meta)?$/) { } |
|
|
9 |
288 |
elsif ($curPath eq 'MOV-Movie-Meta-ItemList') { } |
|
798
|
9 |
0 |
if ($keys) |
|
803
|
14 |
1 |
if $keys->{'Remap'}{$index} |
|
810
|
10 |
2 |
unless $index |
|
812
|
1 |
1 |
if ($tagInfo->{'LangCode'}) |
|
814
|
1 |
0 |
unless $langTags{$id} |
|
826
|
30 |
2 |
unless $newTags->{$_}{'LangCode'} and $newTags->{$_}{'SrcTagInfo'} |
|
828
|
2 |
0 |
unless $langTags{$id} |
|
832
|
114 |
191 |
if ($curPath eq $writePath or $createKeys) |
|
836
|
3 |
302 |
if $tagTablePtr->{'VARS'} |
|
839
|
0 |
0 |
if (defined $atomCount and --$atomCount < 0 and $dataPt) |
|
841
|
0 |
0 |
unless &Write($outfile, substr($$dataPt, $raf->Tell)) |
|
846
|
305 |
1042 |
unless ($n == 8) |
|
847
|
0 |
305 |
if ($n == 4 and $hdr eq "\000\000\000\000") { } |
|
|
0 |
305 |
elsif ($n != 0) { } |
|
858
|
3 |
1039 |
if ($size == -7) { } |
|
|
0 |
1039 |
elsif ($size == -8) { } |
|
|
0 |
1039 |
elsif ($size < 0) { } |
|
860
|
0 |
3 |
unless $raf->Read($buff, 8) == 8 |
|
863
|
0 |
3 |
if ($hi or $lo > 2147483647) |
|
864
|
0 |
0 |
if ($hi > 2147483647) { } |
|
|
0 |
0 |
elsif (not $et->Options('LargeFileSupport')) { } |
|
873
|
0 |
3 |
if $size < 0 |
|
875
|
0 |
0 |
if ($dataPt) { } |
|
876
|
0 |
0 |
if $dirInfo->{'DirName'} eq "CanonCNTH" |
|
894
|
21 |
1021 |
if ($tag eq 'mdat') { } |
|
|
0 |
1021 |
elsif ($tag eq 'cmov') { } |
|
|
0 |
1021 |
elsif ($tag eq 'wide') { } |
|
895
|
0 |
21 |
if ($dataPt) |
|
900
|
0 |
21 |
unless $raf->Seek($size, 1) |
|
911
|
2 |
1019 |
if (not $size) { } |
|
916
|
0 |
1019 |
$size > $maxReadLen ? : |
|
918
|
0 |
1021 |
if ($got != $size) |
|
920
|
0 |
0 |
if ($got <= 256 and $size >= 1024 and $tag ne 'mdat') { } |
|
922
|
0 |
0 |
if ($et->{'OPTIONS'}{'IgnoreMinorErrors'}) { } |
|
931
|
0 |
0 |
if ($size > $maxReadLen and $got == 65536) { } |
|
941
|
75 |
946 |
if ($tag eq "hdlr" and length $buff >= 12) |
|
943
|
30 |
45 |
if $hdlr =~ /^(vide|soun)$/ |
|
948
|
49 |
972 |
if ($tag =~ /^(stco|co64|iloc|mfra|moof|sidx|saio|gps |CTBO|uuid)$/) |
|
951
|
0 |
49 |
if ($tag eq 'mfra' or $tag eq 'moof') { } |
|
|
0 |
49 |
elsif ($tag eq 'sidx' or $tag eq 'saio') { } |
|
|
3 |
46 |
elsif ($tag eq 'iloc') { } |
|
|
0 |
46 |
elsif ($tag eq 'gps ') { } |
|
|
13 |
33 |
elsif ($tag eq 'CTBO' or $tag eq 'uuid') { } |
|
|
0 |
33 |
elsif (not $flg) { } |
|
|
0 |
33 |
elsif ($flg == 3) { } |
|
|
33 |
0 |
elsif ($flg == 1) { } |
|
958
|
0 |
3 |
unless &Handle_iloc($et, $dirInfo, \$buff, $outfile) |
|
961
|
0 |
0 |
if ($dirInfo->{'DirID'} and $dirInfo->{'DirID'} eq "moov" and length $buff > 8) |
|
964
|
0 |
0 |
if $num * 8 + 8 > length $buff |
|
989
|
21 |
808 |
if $tagInfo and $tagInfo->{'WriteHook'} |
|
992
|
21 |
0 |
if (not $tagInfo and $dirName eq "ItemList" and $et->{'Keys'}) |
|
995
|
21 |
0 |
if (defined $newIndex) { } |
|
997
|
7 |
14 |
unless ($newIndex) |
|
998
|
1 |
6 |
if ($tagInfo) { } |
|
1007
|
2 |
12 |
unless ($keysIndex == $newIndex) |
|
1016
|
77 |
937 |
if ($delGrp) |
|
1017
|
44 |
33 |
if ($dirName eq 'ItemList') { } |
|
|
14 |
31 |
elsif ($dirName eq 'UserData' and not $tagInfo && $tagInfo->{'SubDirectory'}) { } |
|
1027
|
0 |
785 |
if $tagInfo and $tagInfo->{'Unknown'} |
|
1029
|
785 |
0 |
if ($tagInfo and !defined($tagInfo->{'Writable'}) || $tagInfo->{'Writable'}) |
|
1033
|
565 |
220 |
if ($subdir) { } |
|
1035
|
33 |
532 |
if $tag eq "trak" |
|
1042
|
0 |
565 |
if ($subdir->{'Base'}) |
|
1047
|
0 |
0 |
if $localBase <= $hdrLen |
|
1072
|
0 |
565 |
if $et->Options("QuickTimePad") |
|
1075
|
62 |
503 |
if ($hdrLen and $hdrLen < $size) |
|
1079
|
7 |
558 |
if $subdir->{'ByteOrder'} and $subdir->{'ByteOrder'} =~ /^Little/ |
|
1081
|
33 |
532 |
if ($subName eq "Track") |
|
1082
|
15 |
18 |
unless $track |
|
1087
|
37 |
528 |
unless $subTable->{'GROUPS'}{'0'} eq "QuickTime" |
|
1090
|
33 |
532 |
if ($et->{'DemoteErrors'}) |
|
1092
|
0 |
33 |
if $et->{'DemoteErrors'} > 1 |
|
1095
|
0 |
9 |
if (defined $newData and not length $newData and $tagInfo->{'Permanent'} || $tagTablePtr->{'PERMANENT'} && !defined($tagInfo->{'Permanent'})) |
|
1105
|
56 |
1 |
if ($start and defined $newData and length $newData || defined $tagInfo->{'Permanent'} && !$tagInfo->{'Permanent'}) |
|
1112
|
34 |
192 |
if ($curPath eq $writePath and $addDirs->{$subName} and $addDirs->{$subName} eq $dirName) |
|
1120
|
2 |
211 |
if ($nvHash or $langTags{$tag} or $delGrp) |
|
1126
|
5 |
4 |
if ($hasData) { } |
|
|
0 |
4 |
elsif ($format) { } |
|
|
4 |
0 |
elsif ($tag =~ /^\xa9/ || $tagInfo->{'IText'} and $size >= ($tagInfo->{'IText'} || 4)) { } |
|
1129
|
5 |
5 |
if ($pos + 16 > $size) |
|
1131
|
1 |
4 |
if ($langTags{$tag}) |
|
1134
|
1 |
1 |
$tg ? : |
|
1136
|
1 |
1 |
unless $nvHash and not $didTag->{$nvHash} |
|
1138
|
0 |
1 |
unless $nvHash->{'IsCreating'} and $et->IsOverwriting($nvHash) |
|
1140
|
0 |
1 |
unless defined $newVal |
|
1143
|
0 |
1 |
unless defined $newVal |
|
1145
|
1 |
0 |
if ($ti->{'LangCode'}) |
|
1146
|
0 |
1 |
unless ($ti->{'LangCode'} =~ /^([A-Z]{3})?[-_]?([A-Z]{2})?$/i) |
|
1151
|
1 |
0 |
if ($1 and $1 ne "und") |
|
1154
|
1 |
0 |
if $2 and $2 ne "ZZ" |
|
1156
|
1 |
0 |
unless defined $newData |
|
1166
|
5 |
0 |
unless $lang |
|
1174
|
0 |
0 |
if $nvHash or not $ctry or $lang ne $undLang or length $langCode == 2 |
|
1180
|
4 |
1 |
if (not $nvHash and $nvHashNoLang) |
|
1181
|
4 |
0 |
if ($lang eq $undLang and not $ctry and not $didTag->{$nvHashNoLang}) { } |
|
1187
|
0 |
5 |
if $pos + $len > $size |
|
1188
|
5 |
0 |
if ($type eq 'data' and $len >= 16) { } |
|
|
0 |
0 |
elsif (defined $newData) { } |
|
1193
|
5 |
0 |
if ($Image::ExifTool::QuickTime::stringEncoding{$flags}) { } |
|
1195
|
5 |
0 |
unless $tagInfo->{'Binary'} |
|
1198
|
0 |
0 |
if ($format) { } |
|
1200
|
0 |
0 |
if ($tagInfo->{'Writable'} and $qtFormat{$tagInfo->{'Writable'}}) { } |
|
|
0 |
0 |
elsif ($qtFormat{$format}) { } |
|
1208
|
0 |
0 |
if $format |
|
1210
|
3 |
2 |
if ($nvHash and $et->IsOverwriting($nvHash, $val) or $delTag) { } |
|
|
0 |
2 |
elsif (defined $newData) { } |
|
1211
|
3 |
0 |
if defined $nvHash |
|
1212
|
0 |
3 |
if ($delTag or not defined $newVal or $didTag->{$nvHash}) |
|
1217
|
0 |
0 |
unless defined $newData |
|
1227
|
3 |
0 |
unless defined $newData |
|
1228
|
3 |
0 |
$lang eq $undLang ? : |
|
1238
|
4 |
1 |
if $nvHash |
|
1240
|
0 |
5 |
if defined $newData and $pos < $size |
|
1246
|
0 |
4 |
if ($tagInfo->{'IText'} and $tagInfo->{'IText'} >= 6) { } |
|
1255
|
0 |
4 |
if 4 + $len > $size |
|
1256
|
0 |
4 |
if $len > $size - 4 or $len < 0 |
|
1259
|
4 |
0 |
unless $lang |
|
1261
|
0 |
4 |
if ($lang < 1024 and not $val =~ /^\xfe\xff/) { } |
|
1265
|
0 |
4 |
$val =~ s/^\xfe\xff// ? : |
|
1267
|
4 |
0 |
unless ($tagInfo->{'NoDecode'}) |
|
1271
|
0 |
4 |
if defined $hdr |
|
1275
|
3 |
1 |
if (not $nvHash and $nvHashNoLang) |
|
1276
|
3 |
0 |
if ($lang eq $undLang and not $didTag->{$nvHashNoLang}) { } |
|
|
0 |
0 |
elsif ($canCreate) { } |
|
1288
|
0 |
0 |
if ($tag =~ /^\xa9/ or $tagInfo->{'IText'}) |
|
1292
|
3 |
6 |
if ($nvHash and defined $val) |
|
1293
|
3 |
0 |
if ($et->IsOverwriting($nvHash, $val)) |
|
1295
|
0 |
3 |
unless defined $newData or $canCreate |
|
1299
|
0 |
3 |
unless defined $newData and not $didTag->{$nvHash} |
|
1302
|
3 |
0 |
if (defined $lang) { } |
|
|
0 |
0 |
elsif (not $format or $format =~ /^string/ and not $tagInfo->{'Binary'} and not $tagInfo->{'ValueConv'}) { } |
|
|
0 |
0 |
elsif ($format and not $tagInfo->{'Binary'}) { } |
|
1305
|
0 |
3 |
if ($iText > 6) |
|
1306
|
0 |
0 |
if length $newData < $iText - 6 |
|
1310
|
3 |
0 |
unless ($tagInfo->{'NoDecode'}) |
|
1311
|
0 |
3 |
$lang < 1024 ? : |
|
1313
|
3 |
0 |
$lang eq $undLang ? : |
|
1314
|
3 |
0 |
if ($iText < 6) { } |
|
|
0 |
0 |
elsif ($iText == 6) { } |
|
1336
|
394 |
391 |
if (defined $newData) |
|
1339
|
0 |
394 |
if ($sizeDiff > 0 and $tagInfo->{'PreservePadding'} and $et->Options('QuickTimePad')) { } |
|
|
67 |
327 |
elsif ($sizeDiff) { } |
|
1346
|
0 |
394 |
if $len > 2147483647 |
|
1348
|
5 |
389 |
if $tag eq "uuid" |
|
1349
|
9 |
385 |
unless $len > 8 |
|
1351
|
153 |
232 |
if (@chunkOffset) |
|
1355
|
1 |
384 |
if ($tagInfo->{'WriteLast'}) { } |
|
1360
|
0 |
384 |
unless &Write($outfile, &Set32u($len), $tag, $newData) |
|
1366
|
0 |
562 |
if ($tag eq 'dinf') { } |
|
|
33 |
529 |
elsif ($parent eq 'DataInfo' and length $buff >= 4) { } |
|
|
33 |
992 |
elsif ($tag eq 'stsd' and length $buff >= 8) { } |
|
1376
|
0 |
33 |
unless $pos + 16 <= length $buff |
|
1378
|
0 |
33 |
unless $pos + $siz <= length $buff |
|
1381
|
0 |
33 |
if (not $drefIdx) { } |
|
|
33 |
0 |
elsif ($drefTbl and $$drefTbl[$drefIdx - 1]) { } |
|
1386
|
33 |
0 |
$dref->[1] == 1 && $dref->[0] ne 'rsrc' ? : |
|
1393
|
0 |
33 |
if ($msg) |
|
1395
|
0 |
0 |
if ($et->{'HandlerType'}) |
|
1404
|
0 |
562 |
if ($tagInfo and $tagInfo->{'WriteLast'}) { } |
|
1410
|
0 |
562 |
unless &Write($outfile, $hdr, $buff) |
|
1413
|
0 |
7 |
$delCount == 1 ? : |
|
|
7 |
298 |
if $delCount |
|
1415
|
247 |
58 |
unless $addDirs->{'Keys'} |
|
1418
|
79 |
35 |
if ($canCreate and exists $et->{'EDIT_DIRS'}{$dirName} || $createKeys) |
|
1425
|
15 |
64 |
if ($createKeys) |
|
1426
|
2 |
13 |
if ($curPath eq 'MOV-Movie') { } |
|
|
4 |
9 |
elsif ($curPath eq 'MOV-Movie-Meta') { } |
|
|
9 |
0 |
elsif ($curPath eq 'MOV-Movie-Meta-ItemList' and $et->{'Keys'}) { } |
|
1428
|
2 |
0 |
unless ($didDir{'meta'}) |
|
1437
|
8 |
0 |
if $didDir{$_} |
|
1455
|
0 |
53 |
if defined $tagInfo->{'CanCreate'} and not $tagInfo->{'CanCreate'} |
|
1457
|
0 |
0 |
if defined $tagInfo->{'HandlerType'} and !$et->{'HandlerType'} || $et->{'HandlerType'} ne $tagInfo->{'HandlerType'} |
|
1459
|
39 |
14 |
unless ($subdir) |
|
1461
|
8 |
31 |
unless $nvHash and not $didTag->{$nvHash} |
|
1462
|
13 |
18 |
unless $nvHash->{'IsCreating'} and $et->IsOverwriting($nvHash) |
|
1464
|
0 |
18 |
unless defined $newVal |
|
1467
|
0 |
18 |
unless defined $newVal |
|
1470
|
0 |
18 |
if ($tagInfo->{'LangCode'}) |
|
1472
|
0 |
0 |
unless ($tagInfo->{'LangCode'} =~ /^([A-Z]{3})?[-_]?([A-Z]{2})?$/i) |
|
1477
|
0 |
0 |
if ($1 and $1 ne "und") |
|
1480
|
0 |
0 |
if $2 and $2 ne "ZZ" |
|
1482
|
11 |
7 |
if ($dirInfo->{'HasData'}) { } |
|
|
7 |
0 |
elsif ($tag =~ /^\xa9/ or $tagInfo->{'IText'}) { } |
|
|
0 |
0 |
elsif ($ctry or $lang) { } |
|
1486
|
0 |
7 |
if ($ctry) { } |
|
|
2 |
5 |
elsif ($tagInfo->{'IText'} and $tagInfo->{'IText'} >= 6) { } |
|
1494
|
0 |
2 |
if length $newVal < $n |
|
1505
|
0 |
18 |
if ($tagInfo->{'WriteLast'}) { } |
|
1509
|
0 |
18 |
unless &Write($outfile, &Set32u(8 + length($newVal)), $tag, $newVal) |
|
1520
|
2 |
12 |
if ($createKeys and $curPath eq 'MOV-Movie' and $subName eq 'Meta') { } |
|
|
0 |
12 |
elsif ($createKeys and $curPath eq 'MOV-Movie-Meta') { } |
|
|
2 |
10 |
elsif ($subName eq 'Meta' and $et->{'OPTIONS'}{'QuickTimeHandler'}) { } |
|
1527
|
0 |
0 |
$subName eq 'Keys' ? : |
|
1533
|
0 |
10 |
unless $curPath eq $writePath and $addDirs->{$subName} and $addDirs->{$subName} eq $dirName |
|
1548
|
14 |
0 |
if ($newData and length $newData <= 2147483639) |
|
1551
|
5 |
9 |
if ($subdir->{'Start'}) |
|
1552
|
2 |
3 |
if ($subdir->{'Start'} == 4) { } |
|
1557
|
3 |
0 |
if $cond and $cond =~ m[=~\s*\/\^(.*)/] |
|
1558
|
0 |
3 |
unless length $prefix == $subdir->{'Start'} |
|
1562
|
1 |
13 |
if ($tagInfo->{'WriteLast'}) { } |
|
1565
|
2 |
11 |
if ($tag eq "uuid") |
|
1571
|
0 |
13 |
unless &Write($outfile, $newHdr, $newData) |
|
1576
|
14 |
0 |
unless $subName eq "Keys" |
|
1580
|
3 |
0 |
if ($curPath eq "MOV-Meta" and $et->{'EDIT_DIRS'}{'ItemInformation'}) |
|
1583
|
3 |
0 |
if ($mdatEdit) |
|
1584
|
0 |
3 |
if $et->{'mdatEdit'} |
|
1589
|
0 |
305 |
if $term and length $$outfile |
|
1592
|
24 |
281 |
if ($dirName eq "Meta") |
|
1596
|
2 |
22 |
if ($isEmpty) |
|
1597
|
2 |
0 |
if %boxPos |
|
1601
|
9 |
15 |
if ($curPath eq "MOV-Movie-Meta") |
|
1608
|
287 |
18 |
if ($dataPt) |
|
1609
|
0 |
287 |
if $writeLast |
|
1610
|
0 |
287 |
$err ? : |
|
1615
|
0 |
18 |
unless (@mdat) |
|
1617
|
0 |
0 |
if $co->[0] eq "uuid" |
|
1627
|
3 |
15 |
if ($et->{'mdatEdit'}) |
|
1635
|
10 |
2 |
if (length $mdat->[2]) |
|
1645
|
7 |
5 |
if defined $mdat->[5] or $changed |
|
1646
|
5 |
0 |
if (not $edit->[0] or ($edit->[0] < $mdat->[1] || !$mdat->[1] and $edit->[1] > $mdat->[0] or $edit->[0] == $edit->[1] and $edit->[0] == $mdat->[0] || $edit->[0] == $mdat->[1])) |
|
1652
|
2 |
3 |
if (not $edit->[0]) { } |
|
|
0 |
3 |
elsif ($edit->[0] < $mdat->[0] or $edit->[1] > $mdat->[1] and $mdat->[1]) { } |
|
1659
|
0 |
5 |
unless $hdrChunk |
|
1661
|
5 |
0 |
$edit->[2] ? : |
|
1663
|
5 |
0 |
if ($diff) |
|
1664
|
5 |
0 |
if (length $hdrChunk->[2] == 8) { } |
|
|
0 |
0 |
elsif (length $hdrChunk->[2] == 16) { } |
|
1666
|
0 |
5 |
if $size > 4294967295 |
|
1678
|
0 |
5 |
if ($edit->[0] > $mdat->[0]) { } |
|
1679
|
0 |
0 |
if $edit->[2] |
|
1684
|
5 |
0 |
if ($edit->[2]) |
|
1689
|
5 |
0 |
if ($edit->[3]) |
|
1692
|
14 |
5 |
unless defined $co->[4] and $co->[4] == $edit->[3] |
|
1694
|
5 |
0 |
if ($co->[0] eq 'stco_iloc') { } |
|
1700
|
0 |
5 |
unless $n == 1 |
|
1707
|
5 |
0 |
if ($changed) { } |
|
1721
|
5 |
21 |
$mdat->[4] ? : |
|
1727
|
59 |
0 |
unless $base |
|
1728
|
15 |
44 |
unless ($type =~ /^(stco|co64)_?(.*)$/) |
|
1729
|
12 |
3 |
if $type eq "uuid" |
|
1730
|
0 |
3 |
unless $type eq "CTBO" |
|
1732
|
0 |
3 |
unless $co->[2] > 12 |
|
1733
|
0 |
3 |
unless @mdat |
|
1735
|
0 |
3 |
if $co->[2] < $n * 20 + 12 |
|
1739
|
15 |
10 |
unless $_->[0] eq "uuid" and $_->[2] >= 24 |
|
1741
|
1 |
9 |
if $pos + 24 > length $$outfile |
|
1743
|
0 |
9 |
if ($siz == 1) |
|
1744
|
0 |
0 |
unless $_->[2] >= 32 |
|
1749
|
6 |
3 |
if defined $id |
|
1758
|
3 |
0 |
unless &Get64u($outfile, $pos + 12) or $id == 1 or $id == 2 |
|
1759
|
0 |
9 |
unless (defined $ctboOff{$id}) |
|
1760
|
0 |
0 |
unless $id == 1 or $id == 2 |
|
1766
|
6 |
3 |
unless $ctboOff{$id}[2] < 0 |
|
1770
|
12 |
32 |
$1 eq 'co64' ? : |
|
1772
|
11 |
33 |
if ($2) { } |
|
1777
|
0 |
33 |
if $len < 8 |
|
1784
|
0 |
44 |
if $end > $ptr + $len |
|
1787
|
12 |
11 |
$type eq 'co64' ? : |
|
1791
|
17 |
21 |
if (defined $mdat->[5]) { } |
|
1793
|
12 |
5 |
unless (defined $id and $id == $mdat->[5]) |
|
1795
|
12 |
0 |
unless $pos == $mdat->[0] and $mdat->[0] != $mdat->[1] |
|
1799
|
3 |
18 |
unless $pos >= $mdat->[0] and $pos <= $mdat->[1] || !$mdat->[1] |
|
1801
|
0 |
0 |
if $pos == $mdat->[1] and $i + 1 < @mdat and $pos == $mdat[$i + 1][0] |
|
1804
|
0 |
23 |
if ($val < 0) |
|
1808
|
12 |
11 |
if ($type eq 'co64') { } |
|
|
11 |
0 |
elsif ($val <= 4294967295) { } |
|
1819
|
0 |
23 |
unless ($ok) |
|
1830
|
0 |
18 |
unless &Write($outfile, $outBuff) |
|
1834
|
0 |
26 |
unless &Write($outfile, $mdat->[2]) |
|
1835
|
5 |
21 |
if ($mdat->[4]) { } |
|
1836
|
0 |
5 |
unless &Write($outfile, ${$$mdat[4];}) |
|
1838
|
0 |
21 |
unless $raf->Seek($mdat->[0], 0) |
|
1839
|
21 |
0 |
if ($mdat->[1]) { } |
|
1841
|
0 |
21 |
unless defined $result |
|
1842
|
0 |
21 |
unless $result |
|
1847
|
0 |
0 |
unless &Write($outfile, $buff) |
|
1854
|
2 |
16 |
if $writeLast |
|
1867
|
0 |
18 |
unless $et |
|
1868
|
0 |
18 |
unless my $raf = $dirInfo->{'RAF'} |
|
1872
|
0 |
18 |
unless $raf->Read($buff, 8) == 8 |
|
1874
|
0 |
18 |
if $size < 8 and $size != 1 |
|
1878
|
0 |
18 |
unless $tagTablePtr->{$tag} |
|
1882
|
9 |
9 |
if ($tag eq 'ftyp' and $size >= 12 and $size < 100000 and $raf->Read($buff, $size - 8) == $size - 8 and not $buff =~ /^(....)+(qt )/s) { } |
|
1886
|
3 |
6 |
if ($buff =~ /^crx /) { } |
|
|
3 |
3 |
elsif ($buff =~ /^(heic|mif1|msf1|heix|hevc|hevx|avif)/) { } |
|
1908
|
18 |
0 |
&WriteQuickTime($et, $dirInfo, $tagTablePtr) ? : |