Maksim Zuev created COMPRESS-548:
------------------------------------
Summary: Decompression fails with NegativeArraySizeException
Key: COMPRESS-548
URL: https://issues.apache.org/jira/browse/COMPRESS-548
Project: Commons Compress
Issue Type: Bug
Affects Versions: 1.20
Reporter: Maksim Zuev
This Kotlin code fails with exception(NegativeArraySizeException.zip is in the
attachments)
Exception in thread "main" java.lang.NegativeArraySizeException: -3
at
org.apache.commons.compress.archivers.zip.AsiExtraField.parseFromLocalFileData(AsiExtraField.java:271)
at
org.apache.commons.compress.archivers.zip.ExtraFieldUtils.fillExtraField(ExtraFieldUtils.java:324)
at
org.apache.commons.compress.archivers.zip.ZipArchiveEntry$ExtraFieldParsingMode.fillAndMakeUnrecognizedOnError(ZipArchiveEntry.java:1219)
at
org.apache.commons.compress.archivers.zip.ZipArchiveEntry$ExtraFieldParsingMode.access$100(ZipArchiveEntry.java:1127)
at
org.apache.commons.compress.archivers.zip.ZipArchiveEntry$ExtraFieldParsingMode$1.fill(ZipArchiveEntry.java:1142)
at
org.apache.commons.compress.archivers.zip.ExtraFieldUtils.parse(ExtraFieldUtils.java:214)
at
org.apache.commons.compress.archivers.zip.ZipArchiveEntry.setExtra(ZipArchiveEntry.java:675)
at
org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.getNextZipEntry(ZipArchiveInputStream.java:341)
at
org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.getNextEntry(ZipArchiveInputStream.java:435)
at kotlinx.fuzzer.tests.apache.zip.ApacheZipTestKt.main(ApacheZipTest.kt:85)
at kotlinx.fuzzer.tests.apache.zip.ApacheZipTestKt.main(ApacheZipTest.kt)
{code:java}
import org.apache.commons.compress.archivers.ArchiveStreamFactory
import java.io.ByteArrayInputStream
import java.io.File
fun main() {
val bytes = File("NegativeArraySizeException.zip").readBytes()
val input = ByteArrayInputStream(bytes)
ArchiveStreamFactory().createArchiveInputStream("zip", input).use { ais ->
ais.nextEntry
ais.readAllBytes()
}
}
{code}
Expected some other exception as IOException is the only declared.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)