This is an automated email from the ASF dual-hosted git repository.

tallison pushed a commit to branch branch_3x
in repository https://gitbox.apache.org/repos/asf/tika.git


The following commit(s) were added to refs/heads/branch_3x by this push:
     new b13c7bda6 TIKA-4469 -- backwards compatibility for versions of 
commons-compress before 1.28.0
b13c7bda6 is described below

commit b13c7bda61a14a023cef3dba75b6a0dc5e873efe
Author: tallison <[email protected]>
AuthorDate: Wed Sep 10 11:22:53 2025 -0400

    TIKA-4469 -- backwards compatibility for versions of commons-compress 
before 1.28.0
---
 .../tika/detect/zip/DefaultZipContainerDetector.java      | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git 
a/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-zip-commons/src/main/java/org/apache/tika/detect/zip/DefaultZipContainerDetector.java
 
b/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-zip-commons/src/main/java/org/apache/tika/detect/zip/DefaultZipContainerDetector.java
index af6f0e68c..18f818061 100644
--- 
a/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-zip-commons/src/main/java/org/apache/tika/detect/zip/DefaultZipContainerDetector.java
+++ 
b/tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-zip-commons/src/main/java/org/apache/tika/detect/zip/DefaultZipContainerDetector.java
@@ -24,11 +24,13 @@ import java.nio.file.Path;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.commons.compress.archivers.ArchiveException;
 import org.apache.commons.compress.archivers.ArchiveStreamFactory;
 import 
org.apache.commons.compress.archivers.zip.UnsupportedZipFeatureException;
 import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
 import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
 import org.apache.commons.compress.archivers.zip.ZipFile;
+import org.apache.commons.compress.compressors.CompressorException;
 import org.apache.commons.compress.compressors.CompressorStreamFactory;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.input.CloseShieldInputStream;
@@ -133,9 +135,15 @@ public class DefaultZipContainerDetector implements 
Detector {
             return TIFF;
         }
         try {
-            String name = ArchiveStreamFactory.detect(
-                    
UnsynchronizedByteArrayInputStream.builder().setByteArray(prefix).setLength(length).get());
+            String name = 
ArchiveStreamFactory.detect(UnsynchronizedByteArrayInputStream
+                    .builder()
+                    .setByteArray(prefix)
+                    .setLength(length)
+                    .get());
             return PackageConstants.getMediaType(name);
+        } catch (ArchiveException e) {
+            //compress versions before 1.28.0 need this
+            return MediaType.OCTET_STREAM;
         } catch (IOException e) {
             return MediaType.OCTET_STREAM;
         }
@@ -147,6 +155,9 @@ public class DefaultZipContainerDetector implements 
Detector {
                     CompressorStreamFactory.detect(
                             
UnsynchronizedByteArrayInputStream.builder().setByteArray(prefix).setLength(length).get());
             return CompressorConstants.getMediaType(type);
+        } catch (CompressorException e) {
+            //compress versions before 1.28.0 need this
+            return MediaType.OCTET_STREAM;
         } catch (IOException e) {
             return MediaType.OCTET_STREAM;
         }

Reply via email to