[ 
https://issues.apache.org/jira/browse/COMPRESS-494?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17009788#comment-17009788
 ] 

Stefan Bodewig commented on COMPRESS-494:
-----------------------------------------

>From your logs setSize is never called with a negative number, Are you still 
>getting the exception this issue is about?

The else branch above assumes it is reading the data descriptor of a ZIP64 
archive and so sizes take eight bytes each. So the offset has to be different - 
four bytes for the compressed size that preceedes the size for tranditional 
zips and eight for ZIP64 zips.

Also note the branches are switched between your two versions - your Java 
decompiler has swapped them. The latest released code is 
[https://github.com/apache/commons-compress/blob/rel/1.19/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStream.java#L830]
 which is identical to both code-snippets you quote (except for the logging).

> ZipArchieveInputStream component is throwing "Invalid Entry Size"
> -----------------------------------------------------------------
>
>                 Key: COMPRESS-494
>                 URL: https://issues.apache.org/jira/browse/COMPRESS-494
>             Project: Commons Compress
>          Issue Type: Bug
>    Affects Versions: 1.8, 1.18
>            Reporter: Anvesh Mora
>            Priority: Critical
>         Attachments: commons-compress-1.20-SNAPSHOT.jar
>
>
> I've observed in my development in certain zip files which we are able to 
> extract with with unzip utility on linux is failing with our Compress library.
>  
> As of now I've stack-trace to share, I'm gonna add more in here as on when 
> discussion begins on this:
>  
> {code:java}
> Caused by: java.lang.IllegalArgumentException: invalid entry size
>         at 
> org.apache.commons.compress.archivers.zip.ZipArchiveEntry.setSize(ZipArchiveEntry.java:550)
>         at 
> org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.readDataDescriptor(ZipArchiveI
> nputStream.java:702)
>         at 
> org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.bufferContainsSignature(ZipArc
> hiveInputStream.java:805)
>         at 
> org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.readStoredEntry(ZipArchiveInpu
> tStream.java:758)
>         at 
> org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.readStored(ZipArchiveInputStre
> am.java:407)
>         at 
> org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.read(ZipArchiveInputStream.jav
> a:382)
> {code}
> I missed to add version info, below are those:
> version of lib I'm using is: 1.9
> And I did try version 1.18, issue is observed in this version too.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to