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

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


The following commit(s) were added to refs/heads/main by this push:
     new 9951fb5a68 TIKA-4882: Return default value if the extension is unknown 
in FilenameUtils (#3142)
9951fb5a68 is described below

commit 9951fb5a689b2bc3c779763f40fef134e985fdc5
Author: Tim Grein <[email protected]>
AuthorDate: Thu Sep 10 12:38:14 2026 +0200

    TIKA-4882: Return default value if the extension is unknown in 
FilenameUtils (#3142)
---
 tika-core/src/main/java/org/apache/tika/io/FilenameUtils.java     | 6 +++---
 tika-core/src/test/java/org/apache/tika/io/FilenameUtilsTest.java | 6 ++++++
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/tika-core/src/main/java/org/apache/tika/io/FilenameUtils.java 
b/tika-core/src/main/java/org/apache/tika/io/FilenameUtils.java
index 53ac50e968..39f8202a55 100644
--- a/tika-core/src/main/java/org/apache/tika/io/FilenameUtils.java
+++ b/tika-core/src/main/java/org/apache/tika/io/FilenameUtils.java
@@ -383,10 +383,10 @@ public class FilenameUtils {
 
     /**
      * Calculate the extension based on the {@link HttpHeaders#CONTENT_TYPE} 
value.
-     * On parse exception or null value, return the default value.
+     * On parse exception, unknown value or null value, return the default 
value.
      *
      * @param metadata
-     * @param defaultValue
+     * @param defaultValue, which should include a leading "."
      * @return the extension based on the mime type, including the initial "."
      */
     public static String calculateExtension(Metadata metadata, String 
defaultValue) {
@@ -400,7 +400,7 @@ public class FilenameUtils {
         if (ext != null) {
             return ext;
         }
-        return ".bin";
+        return defaultValue;
     }
 
     private static String lookupExtension(String mime) {
diff --git a/tika-core/src/test/java/org/apache/tika/io/FilenameUtilsTest.java 
b/tika-core/src/test/java/org/apache/tika/io/FilenameUtilsTest.java
index 014096ea1b..cf7ad8b537 100644
--- a/tika-core/src/test/java/org/apache/tika/io/FilenameUtilsTest.java
+++ b/tika-core/src/test/java/org/apache/tika/io/FilenameUtilsTest.java
@@ -245,6 +245,12 @@ public class FilenameUtilsTest {
 
     }
 
+    @Test
+    public void testCalculateExtensionUnknownValue() {
+        assertEquals(".pdf", FilenameUtils.calculateExtension(
+                getMetadata("the quick brown fox", 
"application/x-tika-unknown"), ".pdf"));
+    }
+
     private String sanitizePath(String name) {
         return FilenameUtils.getSanitizedEmbeddedFilePath(getMetadata(name), 
".bin", 50);
     }

Reply via email to