exiftool_vendored 12.09.0 → 12.14.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of exiftool_vendored might be problematic. Click here for more details.

Files changed (194) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +76 -5
  3. data/bin/MANIFEST +3 -0
  4. data/bin/META.json +1 -1
  5. data/bin/META.yml +1 -1
  6. data/bin/README +3 -3
  7. data/bin/exiftool +156 -64
  8. data/bin/lib/File/RandomAccess.pm +1 -1
  9. data/bin/lib/File/RandomAccess.pod +2 -2
  10. data/bin/lib/Image/ExifTool.pm +18 -10
  11. data/bin/lib/Image/ExifTool.pod +14 -10
  12. data/bin/lib/Image/ExifTool/AES.pm +1 -1
  13. data/bin/lib/Image/ExifTool/AFCP.pm +1 -1
  14. data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
  15. data/bin/lib/Image/ExifTool/APE.pm +1 -1
  16. data/bin/lib/Image/ExifTool/APP12.pm +1 -1
  17. data/bin/lib/Image/ExifTool/ASF.pm +1 -1
  18. data/bin/lib/Image/ExifTool/Apple.pm +1 -1
  19. data/bin/lib/Image/ExifTool/Audible.pm +1 -1
  20. data/bin/lib/Image/ExifTool/BMP.pm +1 -1
  21. data/bin/lib/Image/ExifTool/BPG.pm +1 -1
  22. data/bin/lib/Image/ExifTool/BZZ.pm +1 -1
  23. data/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
  24. data/bin/lib/Image/ExifTool/BuildTagLookup.pm +10 -4
  25. data/bin/lib/Image/ExifTool/Canon.pm +20 -15
  26. data/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
  27. data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
  28. data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
  29. data/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
  30. data/bin/lib/Image/ExifTool/Casio.pm +1 -1
  31. data/bin/lib/Image/ExifTool/Charset.pm +1 -1
  32. data/bin/lib/Image/ExifTool/DICOM.pm +1 -1
  33. data/bin/lib/Image/ExifTool/DJI.pm +1 -1
  34. data/bin/lib/Image/ExifTool/DNG.pm +1 -1
  35. data/bin/lib/Image/ExifTool/DPX.pm +1 -1
  36. data/bin/lib/Image/ExifTool/DV.pm +1 -1
  37. data/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
  38. data/bin/lib/Image/ExifTool/DjVu.pm +1 -1
  39. data/bin/lib/Image/ExifTool/EXE.pm +1 -1
  40. data/bin/lib/Image/ExifTool/Exif.pm +14 -1
  41. data/bin/lib/Image/ExifTool/FITS.pm +1 -1
  42. data/bin/lib/Image/ExifTool/FLAC.pm +1 -1
  43. data/bin/lib/Image/ExifTool/FLIF.pm +1 -1
  44. data/bin/lib/Image/ExifTool/FLIR.pm +1 -1
  45. data/bin/lib/Image/ExifTool/Fixup.pm +1 -1
  46. data/bin/lib/Image/ExifTool/Flash.pm +1 -1
  47. data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
  48. data/bin/lib/Image/ExifTool/Font.pm +1 -1
  49. data/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
  50. data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
  51. data/bin/lib/Image/ExifTool/GE.pm +1 -1
  52. data/bin/lib/Image/ExifTool/GIF.pm +1 -1
  53. data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
  54. data/bin/lib/Image/ExifTool/GPS.pm +1 -1
  55. data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
  56. data/bin/lib/Image/ExifTool/Geotag.pm +30 -11
  57. data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
  58. data/bin/lib/Image/ExifTool/H264.pm +1 -1
  59. data/bin/lib/Image/ExifTool/HP.pm +1 -1
  60. data/bin/lib/Image/ExifTool/HTML.pm +1 -1
  61. data/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
  62. data/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
  63. data/bin/lib/Image/ExifTool/ID3.pm +1 -1
  64. data/bin/lib/Image/ExifTool/IPTC.pm +1 -1
  65. data/bin/lib/Image/ExifTool/ISO.pm +1 -1
  66. data/bin/lib/Image/ExifTool/ITC.pm +1 -1
  67. data/bin/lib/Image/ExifTool/Import.pm +15 -12
  68. data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
  69. data/bin/lib/Image/ExifTool/JPEG.pm +1 -1
  70. data/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
  71. data/bin/lib/Image/ExifTool/JSON.pm +1 -1
  72. data/bin/lib/Image/ExifTool/JVC.pm +1 -1
  73. data/bin/lib/Image/ExifTool/Jpeg2000.pm +9 -4
  74. data/bin/lib/Image/ExifTool/Kodak.pm +1 -1
  75. data/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
  76. data/bin/lib/Image/ExifTool/LNK.pm +1 -1
  77. data/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
  78. data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
  79. data/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
  80. data/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
  81. data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
  82. data/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
  83. data/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
  84. data/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
  85. data/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
  86. data/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
  87. data/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
  88. data/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
  89. data/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
  90. data/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
  91. data/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
  92. data/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
  93. data/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
  94. data/bin/lib/Image/ExifTool/Leaf.pm +1 -1
  95. data/bin/lib/Image/ExifTool/Lytro.pm +1 -1
  96. data/bin/lib/Image/ExifTool/M2TS.pm +1 -1
  97. data/bin/lib/Image/ExifTool/MIE.pm +1 -1
  98. data/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
  99. data/bin/lib/Image/ExifTool/MIFF.pm +1 -1
  100. data/bin/lib/Image/ExifTool/MNG.pm +1 -1
  101. data/bin/lib/Image/ExifTool/MOI.pm +1 -1
  102. data/bin/lib/Image/ExifTool/MPC.pm +1 -1
  103. data/bin/lib/Image/ExifTool/MPEG.pm +1 -1
  104. data/bin/lib/Image/ExifTool/MPF.pm +3 -3
  105. data/bin/lib/Image/ExifTool/MWG.pm +1 -1
  106. data/bin/lib/Image/ExifTool/MXF.pm +1 -1
  107. data/bin/lib/Image/ExifTool/MacOS.pm +4 -2
  108. data/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
  109. data/bin/lib/Image/ExifTool/Matroska.pm +1 -1
  110. data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
  111. data/bin/lib/Image/ExifTool/Minolta.pm +1 -1
  112. data/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
  113. data/bin/lib/Image/ExifTool/Motorola.pm +1 -1
  114. data/bin/lib/Image/ExifTool/Nikon.pm +7 -5
  115. data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
  116. data/bin/lib/Image/ExifTool/NikonCustom.pm +1 -1
  117. data/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
  118. data/bin/lib/Image/ExifTool/OOXML.pm +1 -1
  119. data/bin/lib/Image/ExifTool/Ogg.pm +1 -1
  120. data/bin/lib/Image/ExifTool/Olympus.pm +4 -2
  121. data/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
  122. data/bin/lib/Image/ExifTool/Opus.pm +1 -1
  123. data/bin/lib/Image/ExifTool/PCX.pm +1 -1
  124. data/bin/lib/Image/ExifTool/PDF.pm +10 -2
  125. data/bin/lib/Image/ExifTool/PGF.pm +1 -1
  126. data/bin/lib/Image/ExifTool/PICT.pm +1 -1
  127. data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
  128. data/bin/lib/Image/ExifTool/PLUS.pm +1 -1
  129. data/bin/lib/Image/ExifTool/PNG.pm +1 -1
  130. data/bin/lib/Image/ExifTool/PPM.pm +1 -1
  131. data/bin/lib/Image/ExifTool/PSP.pm +1 -1
  132. data/bin/lib/Image/ExifTool/Palm.pm +1 -1
  133. data/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
  134. data/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
  135. data/bin/lib/Image/ExifTool/Parrot.pm +1 -1
  136. data/bin/lib/Image/ExifTool/Pentax.pm +12 -4
  137. data/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
  138. data/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
  139. data/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
  140. data/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
  141. data/bin/lib/Image/ExifTool/PostScript.pm +1 -1
  142. data/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
  143. data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
  144. data/bin/lib/Image/ExifTool/QuickTime.pm +28 -18
  145. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +24 -3
  146. data/bin/lib/Image/ExifTool/RIFF.pm +82 -5
  147. data/bin/lib/Image/ExifTool/RSRC.pm +1 -1
  148. data/bin/lib/Image/ExifTool/RTF.pm +1 -1
  149. data/bin/lib/Image/ExifTool/Radiance.pm +1 -1
  150. data/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
  151. data/bin/lib/Image/ExifTool/Real.pm +1 -1
  152. data/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
  153. data/bin/lib/Image/ExifTool/Red.pm +1 -1
  154. data/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
  155. data/bin/lib/Image/ExifTool/Samsung.pm +1 -1
  156. data/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
  157. data/bin/lib/Image/ExifTool/Scalado.pm +1 -1
  158. data/bin/lib/Image/ExifTool/Shift.pl +1 -1
  159. data/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
  160. data/bin/lib/Image/ExifTool/Sigma.pm +1 -1
  161. data/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
  162. data/bin/lib/Image/ExifTool/Sony.pm +16 -12
  163. data/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
  164. data/bin/lib/Image/ExifTool/Stim.pm +3 -3
  165. data/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
  166. data/bin/lib/Image/ExifTool/TagLookup.pm +7 -1
  167. data/bin/lib/Image/ExifTool/TagNames.pod +41 -13
  168. data/bin/lib/Image/ExifTool/Text.pm +1 -1
  169. data/bin/lib/Image/ExifTool/Theora.pm +1 -1
  170. data/bin/lib/Image/ExifTool/Torrent.pm +1 -1
  171. data/bin/lib/Image/ExifTool/Unknown.pm +1 -1
  172. data/bin/lib/Image/ExifTool/VCard.pm +1 -1
  173. data/bin/lib/Image/ExifTool/Validate.pm +1 -1
  174. data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
  175. data/bin/lib/Image/ExifTool/WTV.pm +1 -1
  176. data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
  177. data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
  178. data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
  179. data/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
  180. data/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
  181. data/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
  182. data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
  183. data/bin/lib/Image/ExifTool/WriteQuickTime.pl +5 -4
  184. data/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
  185. data/bin/lib/Image/ExifTool/Writer.pl +31 -17
  186. data/bin/lib/Image/ExifTool/XMP.pm +17 -8
  187. data/bin/lib/Image/ExifTool/XMP2.pl +6 -1
  188. data/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
  189. data/bin/lib/Image/ExifTool/ZIP.pm +1 -1
  190. data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
  191. data/bin/lib/Image/ExifTool/iWork.pm +1 -1
  192. data/bin/perl-Image-ExifTool.spec +1 -1
  193. data/lib/exiftool_vendored/version.rb +1 -1
  194. metadata +3 -3
@@ -192,7 +192,7 @@ from Lytro Light Field Picture (LFP) files.
192
192
 
193
193
  =head1 AUTHOR
194
194
 
195
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
195
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
196
196
 
197
197
  This library is free software; you can redistribute it and/or modify it
198
198
  under the same terms as Perl itself.
@@ -714,7 +714,7 @@ video.
714
714
 
715
715
  =head1 AUTHOR
716
716
 
717
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
717
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
718
718
 
719
719
  This library is free software; you can redistribute it and/or modify it
720
720
  under the same terms as Perl itself.
@@ -2544,7 +2544,7 @@ tag name. For example:
2544
2544
 
2545
2545
  =head1 AUTHOR
2546
2546
 
2547
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
2547
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2548
2548
 
2549
2549
  This library is free software; you can redistribute it and/or modify it
2550
2550
  under the same terms as Perl itself. The MIE format itself is also
@@ -356,7 +356,7 @@ A few examples of combined units strings:
356
356
 
357
357
  =head1 AUTHOR
358
358
 
359
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
359
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
360
360
 
361
361
  This library is free software; you can redistribute it and/or modify it
362
362
  under the same terms as Perl itself.
@@ -255,7 +255,7 @@ This module contains routines required by Image::ExifTool to read MIFF
255
255
 
256
256
  =head1 AUTHOR
257
257
 
258
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
258
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
259
259
 
260
260
  This library is free software; you can redistribute it and/or modify it
261
261
  under the same terms as Perl itself.
@@ -661,7 +661,7 @@ This module contains definitions required by Image::ExifTool to read MNG
661
661
 
662
662
  =head1 AUTHOR
663
663
 
664
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
664
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
665
665
 
666
666
  This library is free software; you can redistribute it and/or modify it
667
667
  under the same terms as Perl itself.
@@ -137,7 +137,7 @@ information from MOI files.
137
137
 
138
138
  =head1 AUTHOR
139
139
 
140
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
140
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
141
141
 
142
142
  This library is free software; you can redistribute it and/or modify it
143
143
  under the same terms as Perl itself.
@@ -134,7 +134,7 @@ information from Musepack (MPC) audio files.
134
134
 
135
135
  =head1 AUTHOR
136
136
 
137
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
137
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
138
138
 
139
139
  This library is free software; you can redistribute it and/or modify it
140
140
  under the same terms as Perl itself.
@@ -704,7 +704,7 @@ based on unofficial sources which may be incomplete, inaccurate or outdated.
704
704
 
705
705
  =head1 AUTHOR
706
706
 
707
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
707
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
708
708
 
709
709
  This library is free software; you can redistribute it and/or modify it
710
710
  under the same terms as Perl itself.
@@ -28,8 +28,8 @@ sub ProcessMPImageList($$$);
28
28
  from this segment is stored as a JPEG trailer. The MPF tags are not
29
29
  writable, however the MPF segment may be deleted as a group (with "MPF:All")
30
30
  but then the JPEG trailer should also be deleted (with "Trailer:All"). See
31
- L<http://www.cipa.jp/std/documents/e/DC-007_E.pdf> for the official
32
- specification.
31
+ L<https://web.archive.org/web/20190713230858/http://www.cipa.jp/std/documents/e/DC-007_E.pdf>
32
+ for the official specification.
33
33
  },
34
34
  0xb000 => 'MPFVersion',
35
35
  0xb001 => 'NumberOfImages',
@@ -266,7 +266,7 @@ Format (MPF) information from JPEG images.
266
266
 
267
267
  =head1 AUTHOR
268
268
 
269
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
269
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
270
270
 
271
271
  This library is free software; you can redistribute it and/or modify it
272
272
  under the same terms as Perl itself.
@@ -756,7 +756,7 @@ must be loaded explicitly as described above.
756
756
 
757
757
  =head1 AUTHOR
758
758
 
759
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
759
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
760
760
 
761
761
  This library is free software; you can redistribute it and/or modify it
762
762
  under the same terms as Perl itself.
@@ -2987,7 +2987,7 @@ information from MXF (Material Exchange Format) files.
2987
2987
 
2988
2988
  =head1 AUTHOR
2989
2989
 
2990
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
2990
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2991
2991
 
2992
2992
  This library is free software; you can redistribute it and/or modify it
2993
2993
  under the same terms as Perl itself.
@@ -12,7 +12,7 @@ use strict;
12
12
  use vars qw($VERSION);
13
13
  use Image::ExifTool qw(:DataAccess :Utils);
14
14
 
15
- $VERSION = '1.10';
15
+ $VERSION = '1.11';
16
16
 
17
17
  sub MDItemLocalTime($);
18
18
  sub ProcessATTR($$$);
@@ -651,6 +651,8 @@ sub ProcessATTR($$$)
651
651
  $off < 0 or $off > $dataLen and $et->Warn('Invalid ATTR offset'), last;
652
652
  my $tag = substr($$dataPt, $pos + 11, $n);
653
653
  $tag =~ s/\0+$//; # remove null terminator
654
+ # remove random ID after kMDLabel in tag ID
655
+ $tag =~ s/^com.apple.metadata:kMDLabel_.*/com.apple.metadata:kMDLabel/s;
654
656
  $off + $len > $dataLen and $et->Warn('Truncated ATTR value'), last;
655
657
  my $val = ReadXAttrValue($et, $tagTablePtr, $tag, substr($$dataPt, $off, $len));
656
658
  $et->HandleTag($tagTablePtr, $tag, $val,
@@ -719,7 +721,7 @@ Writable tags use "xattr", "setfile" or "osascript" for writing.
719
721
 
720
722
  =head1 AUTHOR
721
723
 
722
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
724
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
723
725
 
724
726
  This library is free software; you can redistribute it and/or modify it
725
727
  under the same terms as Perl itself.
@@ -1812,7 +1812,7 @@ maker notes in EXIF information.
1812
1812
 
1813
1813
  =head1 AUTHOR
1814
1814
 
1815
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
1815
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
1816
1816
 
1817
1817
  This library is free software; you can redistribute it and/or modify it
1818
1818
  under the same terms as Perl itself.
@@ -914,7 +914,7 @@ information from Matroska multimedia files (MKA, MKV, MKS and WEBM).
914
914
 
915
915
  =head1 AUTHOR
916
916
 
917
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
917
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
918
918
 
919
919
  This library is free software; you can redistribute it and/or modify it
920
920
  under the same terms as Perl itself.
@@ -884,7 +884,7 @@ Microsoft-specific EXIF and XMP tags.
884
884
 
885
885
  =head1 AUTHOR
886
886
 
887
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
887
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
888
888
 
889
889
  This library is free software; you can redistribute it and/or modify it
890
890
  under the same terms as Perl itself.
@@ -2928,7 +2928,7 @@ and write Minolta RAW (MRW) images.
2928
2928
 
2929
2929
  =head1 AUTHOR
2930
2930
 
2931
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
2931
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2932
2932
 
2933
2933
  This library is free software; you can redistribute it and/or modify it
2934
2934
  under the same terms as Perl itself.
@@ -512,7 +512,7 @@ write Konica-Minolta RAW (MRW) images.
512
512
 
513
513
  =head1 AUTHOR
514
514
 
515
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
515
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
516
516
 
517
517
  This library is free software; you can redistribute it and/or modify it
518
518
  under the same terms as Perl itself.
@@ -159,7 +159,7 @@ cell phone images.
159
159
 
160
160
  =head1 AUTHOR
161
161
 
162
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
162
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
163
163
 
164
164
  This library is free software; you can redistribute it and/or modify it
165
165
  under the same terms as Perl itself.
@@ -62,7 +62,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
62
62
  use Image::ExifTool::Exif;
63
63
  use Image::ExifTool::GPS;
64
64
 
65
- $VERSION = '3.88';
65
+ $VERSION = '3.90';
66
66
 
67
67
  sub LensIDConv($$$);
68
68
  sub ProcessNikonAVI($$$);
@@ -1401,7 +1401,9 @@ my %binaryDataAttrs = (
1401
1401
  16 => 'Electronic',
1402
1402
  # 33 => ? seen for 1J2
1403
1403
  48 => 'Electronic Front Curtain',
1404
- # 81 => ? seen for Z50
1404
+ 64 => 'Electronic (Movie)', #JanSkoda (Z6II)
1405
+ 80 => 'Auto (Mechanical)', #JanSkoda (Z6II)
1406
+ 81 => 'Auto (Electronic Front Curtain)', #JanSkoda (Z6II)
1405
1407
  },
1406
1408
  },
1407
1409
  0x0035 => { #32
@@ -2083,7 +2085,7 @@ my %binaryDataAttrs = (
2083
2085
  },
2084
2086
  },
2085
2087
  {
2086
- Condition => '$$valPt =~ /^0800/', # Z6/Z7
2088
+ Condition => '$$valPt =~ /^080[01]/', # Z6/Z7
2087
2089
  Name => 'LensData0800',
2088
2090
  SubDirectory => {
2089
2091
  TagTable => 'Image::ExifTool::Nikon::LensData0800',
@@ -8999,7 +9001,7 @@ my %nikonFocalConversions = (
8999
9001
  },
9000
9002
  },
9001
9003
  {
9002
- Condition => '$$valPt =~ /^0800/', # Z6/Z7
9004
+ Condition => '$$valPt =~ /^080[01]/', # Z6/Z7
9003
9005
  Name => 'LensData0800',
9004
9006
  SubDirectory => {
9005
9007
  TagTable => 'Image::ExifTool::Nikon::LensData0800',
@@ -9794,7 +9796,7 @@ Nikon maker notes in EXIF information.
9794
9796
 
9795
9797
  =head1 AUTHOR
9796
9798
 
9797
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
9799
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
9798
9800
 
9799
9801
  This library is free software; you can redistribute it and/or modify it
9800
9802
  under the same terms as Perl itself.
@@ -918,7 +918,7 @@ the maker notes of NEF images.
918
918
 
919
919
  =head1 AUTHOR
920
920
 
921
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
921
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
922
922
 
923
923
  This library is free software; you can redistribute it and/or modify it
924
924
  under the same terms as Perl itself.
@@ -9534,7 +9534,7 @@ this information.
9534
9534
 
9535
9535
  =head1 AUTHOR
9536
9536
 
9537
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
9537
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
9538
9538
 
9539
9539
  This library is free software; you can redistribute it and/or modify it
9540
9540
  under the same terms as Perl itself.
@@ -107,7 +107,7 @@ interpret Nintendo maker notes EXIF meta information.
107
107
 
108
108
  =head1 AUTHOR
109
109
 
110
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
110
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
111
111
 
112
112
  This library is free software; you can redistribute it and/or modify it
113
113
  under the same terms as Perl itself.
@@ -395,7 +395,7 @@ archives of XML files.
395
395
 
396
396
  =head1 AUTHOR
397
397
 
398
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
398
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
399
399
 
400
400
  This library is free software; you can redistribute it and/or modify it
401
401
  under the same terms as Perl itself.
@@ -214,7 +214,7 @@ information from Ogg bitstream container files.
214
214
 
215
215
  =head1 AUTHOR
216
216
 
217
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
217
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
218
218
 
219
219
  This library is free software; you can redistribute it and/or modify it
220
220
  under the same terms as Perl itself.
@@ -40,7 +40,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
40
40
  use Image::ExifTool::Exif;
41
41
  use Image::ExifTool::APP12;
42
42
 
43
- $VERSION = '2.69';
43
+ $VERSION = '2.70';
44
44
 
45
45
  sub PrintLensInfo($$$);
46
46
 
@@ -109,6 +109,7 @@ my %olympusLensTypes = (
109
109
  '0 32 00' => 'Olympus Zuiko Digital ED 14-35mm F2.0 SWD', #PH
110
110
  '0 32 10' => 'Olympus M.Zuiko Digital ED 12-200mm F3.5-6.3', #IB
111
111
  '0 33 00' => 'Olympus Zuiko Digital 25mm F2.8', #PH
112
+ '0 33 10' => 'Olympus M.Zuiko Digital 150-400mm F4.5 TC1.25x IS Pro', #IB
112
113
  '0 34 00' => 'Olympus Zuiko Digital ED 9-18mm F4.0-5.6', #7
113
114
  '0 34 10' => 'Olympus M.Zuiko Digital ED 12-45mm F4.0 Pro', #IB
114
115
  '0 35 00' => 'Olympus Zuiko Digital 14-54mm F2.8-3.5 II', #PH
@@ -137,6 +138,7 @@ my %olympusLensTypes = (
137
138
  '1 15 00' => 'Sigma 10-20mm F4.0-5.6 EX DC HSM', #11
138
139
  '1 16 00' => 'Sigma APO 70-200mm F2.8 II EX DG Macro HSM', #11
139
140
  '1 17 00' => 'Sigma 50mm F1.4 EX DG HSM', #11
141
+ '1 18 60' => 'Test',
140
142
  # Panasonic/Leica lenses
141
143
  '2 01 00' => 'Leica D Vario Elmarit 14-50mm F2.8-3.5 Asph.', #11
142
144
  '2 01 10' => 'Lumix G Vario 14-45mm F3.5-5.6 Asph. Mega OIS', #16
@@ -4062,7 +4064,7 @@ Olympus or Epson maker notes in EXIF information.
4062
4064
 
4063
4065
  =head1 AUTHOR
4064
4066
 
4065
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
4067
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
4066
4068
 
4067
4069
  This library is free software; you can redistribute it and/or modify it
4068
4070
  under the same terms as Perl itself.
@@ -302,7 +302,7 @@ information from OpenEXR images.
302
302
 
303
303
  =head1 AUTHOR
304
304
 
305
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
305
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
306
306
 
307
307
  This library is free software; you can redistribute it and/or modify it
308
308
  under the same terms as Perl itself.
@@ -69,7 +69,7 @@ information from Ogg Opus audio files.
69
69
 
70
70
  =head1 AUTHOR
71
71
 
72
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
72
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
73
73
 
74
74
  This library is free software; you can redistribute it and/or modify it
75
75
  under the same terms as Perl itself.
@@ -114,7 +114,7 @@ information from PC Paintbrush (PCX) files.
114
114
 
115
115
  =head1 AUTHOR
116
116
 
117
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
117
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
118
118
 
119
119
  This library is free software; you can redistribute it and/or modify it
120
120
  under the same terms as Perl itself.
@@ -21,7 +21,7 @@ use vars qw($VERSION $AUTOLOAD $lastFetched);
21
21
  use Image::ExifTool qw(:DataAccess :Utils);
22
22
  require Exporter;
23
23
 
24
- $VERSION = '1.50';
24
+ $VERSION = '1.51';
25
25
 
26
26
  sub FetchObject($$$$);
27
27
  sub ExtractObject($$;$$);
@@ -2164,6 +2164,7 @@ sub ReadPDF($$)
2164
2164
  # set input record separator
2165
2165
  local $/ = $ws =~ /(\x0d\x0a|\x0d|\x0a)/ ? $1 : "\x0a";
2166
2166
  my (%xref, @mainDicts, %loaded, $mainFree);
2167
+ my ($xrefSize, $mainDictSize) = (0, 0);
2167
2168
  # initialize variables to capture when rewriting
2168
2169
  if ($capture) {
2169
2170
  $capture->{startxref} = $xr;
@@ -2206,6 +2207,7 @@ XRef:
2206
2207
  $raf->Read($buff, 20) == 20 or return -6;
2207
2208
  $buff =~ /^\s*(\d{10}) (\d{5}) (f|n)/s or return -4;
2208
2209
  my $num = $start + $i;
2210
+ $xrefSize = $num if $num > $xrefSize;
2209
2211
  # locate object to generate entry from stream if necessary
2210
2212
  # (must do this before we test $xref{$num})
2211
2213
  LocateAnyObject(\%xref, $num) if $xref{dicts};
@@ -2242,6 +2244,8 @@ XRef:
2242
2244
  $et->Warn('Error loading secondary dictionary');
2243
2245
  next;
2244
2246
  }
2247
+ # keep track of total trailer dictionary Size
2248
+ $mainDictSize = $$mainDict{Size} if $$mainDict{Size} and $$mainDict{Size} > $mainDictSize;
2245
2249
  if ($loadXRefStream) {
2246
2250
  # decode and save our XRef stream from PDF-1.5 file
2247
2251
  # (but parse it later as required to save time)
@@ -2280,6 +2284,10 @@ XRef:
2280
2284
  # load previous xref table if it exists
2281
2285
  push @xrefOffsets, $$mainDict{Prev}, 'Prev' if $$mainDict{Prev};
2282
2286
  }
2287
+ if ($xrefSize > $mainDictSize) {
2288
+ my $str = "Objects in xref table ($xrefSize) exceed trailer dictionary Size ($mainDictSize)";
2289
+ $capture ? $et->Error($str) : $et->Warn($str);
2290
+ }
2283
2291
  #
2284
2292
  # extract encryption information if necessary
2285
2293
  #
@@ -2381,7 +2389,7 @@ including AESV2 (AES-128) and AESV3 (AES-256).
2381
2389
 
2382
2390
  =head1 AUTHOR
2383
2391
 
2384
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
2392
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2385
2393
 
2386
2394
  This library is free software; you can redistribute it and/or modify it
2387
2395
  under the same terms as Perl itself.
@@ -119,7 +119,7 @@ information from Progressive Graphics File (PGF) images.
119
119
 
120
120
  =head1 AUTHOR
121
121
 
122
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
122
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
123
123
 
124
124
  This library is free software; you can redistribute it and/or modify it
125
125
  under the same terms as Perl itself.
@@ -1236,7 +1236,7 @@ Verbose or the Unknown option.
1236
1236
 
1237
1237
  =head1 AUTHOR
1238
1238
 
1239
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
1239
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
1240
1240
 
1241
1241
  This library is free software; you can redistribute it and/or modify it
1242
1242
  under the same terms as Perl itself.
@@ -438,7 +438,7 @@ This module decodes both the binary and XML-based PLIST format.
438
438
 
439
439
  =head1 AUTHOR
440
440
 
441
- Copyright 2003-2020, Phil Harvey (philharvey66 at gmail.com)
441
+ Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
442
442
 
443
443
  This library is free software; you can redistribute it and/or modify it
444
444
  under the same terms as Perl itself.