Hi, the attached patch also normalizes the local extra fields. They unfortunately don't show up in "zipinfo -v", so I forgot them in the previous patch.
I discovered also a bug in Archive::Zip, that local extra fields are currently only working for directories: https://rt.cpan.org/Public/Bug/Display.html?id=101292 But once this is fixed, stripping all extra fields should work with this patch applied. Regards, Reiner
diff --git a/lib/File/StripNondeterminism/handlers/zip.pm b/lib/File/StripNondeterminism/handlers/zip.pm index 11722f6..79f1221 100644 --- a/lib/File/StripNondeterminism/handlers/zip.pm +++ b/lib/File/StripNondeterminism/handlers/zip.pm @@ -115,6 +115,7 @@ sub normalize { $options{member_normalizer}->($member) if exists $options{member_normalizer}; $member->setLastModFileDateTimeFromUnix($File::StripNondeterminism::canonical_time // SAFE_EPOCH); $member->unixFileAttributes(0644) if $member->fileAttributeFormat() == FA_UNIX; + $member->localExtraField(normalize_extra_fields($member->localExtraField())); $member->cdExtraField(normalize_extra_fields($member->cdExtraField())); } $zip->overwrite();
signature.asc
Description: OpenPGP digital signature