Author: tilman
Date: Tue Jan 20 20:00:37 2026
New Revision: 1931438

Log:
PDFBOX-5660: skip different directory

Modified:
   
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractEmbeddedFiles.java

Modified: 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractEmbeddedFiles.java
==============================================================================
--- 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractEmbeddedFiles.java
     Tue Jan 20 18:45:03 2026        (r1931437)
+++ 
pdfbox/branches/3.0/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractEmbeddedFiles.java
     Tue Jan 20 20:00:37 2026        (r1931438)
@@ -61,7 +61,7 @@ public final class ExtractEmbeddedFiles
         }
 
         File pdfFile = new File(args[0]);
-        String directoryPath = pdfFile.getParent();
+        String directoryPath = pdfFile.getParentFile().getCanonicalPath();
         try (PDDocument document = Loader.loadPDF(pdfFile))
         {
             PDDocumentNameDictionary namesDictionary =
@@ -141,6 +141,11 @@ public final class ExtractEmbeddedFiles
     {
         File file = new File(directoryPath, filename);
         File parentDir = file.getParentFile();
+        if (!parentDir.getCanonicalPath().startsWith(directoryPath))
+        {
+            System.err.println("Ignoring " + filename + " (different 
directory)");
+            return;
+        }
         if (!parentDir.exists())
         {
             // sometimes paths contain a directory

Reply via email to