exiftool_vendored 13.17.0 → 13.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29,7 +29,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
29
29
  %jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
30
30
  %static_vars $advFmtSelf);
31
31
 
32
- $VERSION = '13.17';
32
+ $VERSION = '13.19';
33
33
  $RELEASE = '';
34
34
  @ISA = qw(Exporter);
35
35
  %EXPORT_TAGS = (
@@ -6868,10 +6868,10 @@ sub HDump($$$$;$$$)
6868
6868
  # Returns: Trailer info hash (with RAF and DirName set),
6869
6869
  # or undef if no recognized trailer was found
6870
6870
  # Notes: leaves file position unchanged
6871
- sub IdentifyTrailer($;$)
6871
+ sub IdentifyTrailer($$;$)
6872
6872
  {
6873
- my $raf = shift;
6874
- my $offset = shift || 0;
6873
+ my ($self, $raf, $offset) = @_;
6874
+ $offset or $offset = 0;
6875
6875
  my $pos = $raf->Tell();
6876
6876
  my ($buff, $type, $len);
6877
6877
  while ($raf->Seek(-$offset, 2) and ($len = $raf->Tell()) > 0) {
@@ -6900,6 +6900,9 @@ sub IdentifyTrailer($;$)
6900
6900
  $type = 'Vivo';
6901
6901
  } elsif ($buff =~ /jxrs...\0$/s) {
6902
6902
  $type = 'OnePlus';
6903
+ } elsif ($$self{ProcessGoogleTrailer}) {
6904
+ # check for Google trailer information if specific XMP tags exist
6905
+ $type = 'Google';
6903
6906
  }
6904
6907
  last;
6905
6908
  }
@@ -7052,7 +7055,7 @@ sub ProcessTrailers($$)
7052
7055
  $offset += $dirLen;
7053
7056
  last if $dataPos and $$self{TrailerStart} and $dataPos <= $$self{TrailerStart};
7054
7057
  # look for next trailer
7055
- my $nextTrail = IdentifyTrailer($raf, $offset);
7058
+ my $nextTrail = $self->IdentifyTrailer($raf, $offset);
7056
7059
  # process Google trailer after all others if necessary and not done already
7057
7060
  unless ($nextTrail) {
7058
7061
  last unless $$self{ProcessGoogleTrailer};
@@ -7504,11 +7507,7 @@ sub ProcessJPEG($$;$)
7504
7507
  }
7505
7508
  }
7506
7509
  unless ($fast) {
7507
- $trailInfo = IdentifyTrailer($raf);
7508
- # check for Google trailer information if specific XMP tags exist
7509
- if (not $trailInfo and $$self{ProcessGoogleTrailer}) {
7510
- $trailInfo = { DirName => 'Google', RAF => $raf };
7511
- }
7510
+ $trailInfo = $self->IdentifyTrailer($raf);
7512
7511
  # process trailer now unless we are doing verbose dump
7513
7512
  if ($trailInfo and $verbose < 3 and not $htmlDump) {
7514
7513
  # process trailers (keep trailInfo to finish processing later
@@ -8619,7 +8618,7 @@ sub DoProcessTIFF($$;$)
8619
8618
  }
8620
8619
  # process information in recognized trailers
8621
8620
  if ($raf) {
8622
- my $trailInfo = IdentifyTrailer($raf);
8621
+ my $trailInfo = $self->IdentifyTrailer($raf);
8623
8622
  if ($trailInfo) {
8624
8623
  # scan to find AFCP if necessary (Note: we are scanning
8625
8624
  # from a random file position in the TIFF)
@@ -8724,7 +8723,7 @@ sub DoProcessTIFF($$;$)
8724
8723
  for (;;) {
8725
8724
  last unless $extra > 12;
8726
8725
  $raf->Seek($tiffEnd); # seek back to end of image
8727
- $trailInfo = IdentifyTrailer($raf);
8726
+ $trailInfo = $self->IdentifyTrailer($raf);
8728
8727
  last unless $trailInfo;
8729
8728
  my $tbuf = '';
8730
8729
  $$trailInfo{OutFile} = \$tbuf; # rewrite trailer(s)
@@ -9224,10 +9223,11 @@ sub HandleTag($$$$;%)
9224
9223
  }
9225
9224
  $self->Warn("RawConv $tag: " . CleanWarning()) if $evalWarning;
9226
9225
  return undef unless defined $val;
9227
- $val = $$val if ref $val eq 'SCALAR';
9228
- $dataPt = \$val;
9226
+ $dataPt = ref $val eq 'SCALAR' ? $val : \$val;
9229
9227
  $subdirStart = 0;
9230
- $subdirLen = length $val;
9228
+ $subdirLen = length $$dataPt;
9229
+ } elsif (not $dataPt) {
9230
+ $dataPt = ref $val eq 'SCALAR' ? $val : \$val;
9231
9231
  }
9232
9232
  if ($$subdir{Start}) {
9233
9233
  my $valuePtr = 0;
@@ -9236,7 +9236,6 @@ sub HandleTag($$$$;%)
9236
9236
  $subdirStart += $off;
9237
9237
  $subdirLen -= $off;
9238
9238
  }
9239
- $dataPt or $dataPt = \$val;
9240
9239
  # process subdirectory information
9241
9240
  my %dirInfo = (
9242
9241
  DirName => $$subdir{DirName} || $$tagInfo{Name},
@@ -1,6 +1,6 @@
1
1
  Summary: perl module for image data extraction
2
2
  Name: perl-Image-ExifTool
3
- Version: 13.17
3
+ Version: 13.19
4
4
  Release: 1
5
5
  License: Artistic/GPL
6
6
  Group: Development/Libraries/Perl
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ExiftoolVendored
4
- VERSION = Gem::Version.new('13.17.0')
4
+ VERSION = Gem::Version.new('13.19.0')
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exiftool_vendored
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.17.0
4
+ version: 13.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew McEachen
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2025-01-29 00:00:00.000000000 Z
12
+ date: 2025-02-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: exiftool