Details
Description
While using Tika-1.15 and 1.17 to detect file types, it hangs when creating an instance of ZipFile with the attached corrupted zip file. Taking a thread dump shows the app is looping at the following point:
java.lang.Thread.State: RUNNABLE
at org.apache.commons.compress.archivers.zip.X0017_StrongEncryptionHeader.parseCentralDirectoryFormat(X0017_StrongEncryptionHeader.java:313)
at org.apache.commons.compress.archivers.zip.X0017_StrongEncryptionHeader.parseFromCentralDirectoryData(X0017_StrongEncryptionHeader.java:380)
at org.apache.commons.compress.archivers.zip.ExtraFieldUtils.parse(ExtraFieldUtils.java:181)
at org.apache.commons.compress.archivers.zip.ZipArchiveEntry.setCentralDirectoryExtra(ZipArchiveEntry.java:598)
at org.apache.commons.compress.archivers.zip.ZipFile.readCentralDirectoryEntry(ZipFile.java:706)
at org.apache.commons.compress.archivers.zip.ZipFile.populateFromCentralDirectory(ZipFile.java:618)
at org.apache.commons.compress.archivers.zip.ZipFile.<init>(ZipFile.java:290)
at org.apache.commons.compress.archivers.zip.ZipFile.<init>(ZipFile.java:213)
at org.apache.commons.compress.archivers.zip.ZipFile.<init>(ZipFile.java:196)
at org.apache.commons.compress.archivers.zip.ZipFile.<init>(ZipFile.java:157)
at org.apache.tika.parser.pkg.ZipContainerDetector.detectZipFormat(ZipContainerDetector.java:132)
at org.apache.tika.parser.pkg.ZipContainerDetector.detect(ZipContainerDetector.java:88)