You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2026/03/22 07:16:42 UTC

svn commit: r1932444 - pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel

Author: tilman
Date: Sun Mar 22 07:16:41 2026
New Revision: 1932444

Log:
PDFBOX-6180: improve directory boundary check, as suggested by Kaixuan Li; closes #427

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

Modified: pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractEmbeddedFiles.java
==============================================================================
--- pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractEmbeddedFiles.java	Sun Mar 22 07:16:37 2026	(r1932443)
+++ pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractEmbeddedFiles.java	Sun Mar 22 07:16:41 2026	(r1932444)
@@ -141,7 +141,9 @@ public final class ExtractEmbeddedFiles
     {
         File file = new File(directoryPath, filename);
         File parentDir = file.getParentFile();
-        if (!parentDir.getCanonicalPath().startsWith(directoryPath))
+        String parentCanonical = parentDir.getCanonicalPath();
+        if (!parentCanonical.equals(directoryPath) &&
+            !parentCanonical.startsWith(directoryPath + File.separator))
         {
             System.err.println("Ignoring " + filename + " (different directory)");
             return;