You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by bo...@apache.org on 2013/05/26 19:40:48 UTC
svn commit: r1486439 - in /ant/core/trunk: WHATSNEW
src/main/org/apache/tools/zip/Zip64ExtendedInformationExtraField.java
Author: bodewig
Date: Sun May 26 17:40:48 2013
New Revision: 1486439
URL: http://svn.apache.org/r1486439
Log:
merge zip64 fix from commons compress
Modified:
ant/core/trunk/WHATSNEW
ant/core/trunk/src/main/org/apache/tools/zip/Zip64ExtendedInformationExtraField.java (contents, props changed)
Modified: ant/core/trunk/WHATSNEW
URL: http://svn.apache.org/viewvc/ant/core/trunk/WHATSNEW?rev=1486439&r1=1486438&r2=1486439&view=diff
==============================================================================
--- ant/core/trunk/WHATSNEW (original)
+++ ant/core/trunk/WHATSNEW Sun May 26 17:40:48 2013
@@ -8,6 +8,9 @@ Changes that could break older environme
Fixed bugs:
-----------
+ * Parsing of zip64 extra fields has become more lenient in order to
+ be able to read archives created by DotNetZip and maybe other
+ archivers as well.
Other changes:
--------------
Modified: ant/core/trunk/src/main/org/apache/tools/zip/Zip64ExtendedInformationExtraField.java
URL: http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/zip/Zip64ExtendedInformationExtraField.java?rev=1486439&r1=1486438&r2=1486439&view=diff
==============================================================================
--- ant/core/trunk/src/main/org/apache/tools/zip/Zip64ExtendedInformationExtraField.java (original)
+++ ant/core/trunk/src/main/org/apache/tools/zip/Zip64ExtendedInformationExtraField.java Sun May 26 17:40:48 2013
@@ -240,7 +240,7 @@ public class Zip64ExtendedInformationExt
* field with knowledge which fields are expected to be there.
*
* <p>All four fields inside the zip64 extended information extra
- * field are optional and only present if their corresponding
+ * field are optional and must only be present if their corresponding
* entry inside the central directory contains the correct magic
* value.</p>
*/
@@ -254,7 +254,7 @@ public class Zip64ExtendedInformationExt
+ (hasCompressedSize ? DWORD : 0)
+ (hasRelativeHeaderOffset ? DWORD : 0)
+ (hasDiskStart ? WORD : 0);
- if (rawCentralDirectoryData.length != expectedLength) {
+ if (rawCentralDirectoryData.length < expectedLength) {
throw new ZipException("central directory zip64 extended"
+ " information extra field's length"
+ " doesn't match central directory"
Propchange: ant/core/trunk/src/main/org/apache/tools/zip/Zip64ExtendedInformationExtraField.java
------------------------------------------------------------------------------
Merged /commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/Zip64ExtendedInformationExtraField.java:r1486437