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 2024/05/02 08:54:20 UTC

svn commit: r1917469 - /pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDictionary.java

Author: tilman
Date: Thu May  2 08:54:20 2024
New Revision: 1917469

URL: http://svn.apache.org/viewvc?rev=1917469&view=rev
Log:
PDFBOX-5809: recursion protection only needed for objects that allow recursion (change needed because identical integers weren't displayed)

Modified:
    pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDictionary.java

Modified: pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDictionary.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDictionary.java?rev=1917469&r1=1917468&r2=1917469&view=diff
==============================================================================
--- pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDictionary.java (original)
+++ pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDictionary.java Thu May  2 08:54:20 2024
@@ -1366,9 +1366,9 @@ public class COSDictionary extends COSBa
             // avoid endless recursion
             return "hash:" + base.hashCode();
         }
-        objs.add(base);
         if (base instanceof COSDictionary)
         {
+            objs.add(base);
             StringBuilder sb = new StringBuilder("COSDictionary{");
             for (Map.Entry<COSName, COSBase> x : ((COSDictionary) base).entrySet())
             {
@@ -1390,6 +1390,7 @@ public class COSDictionary extends COSBa
         }
         if (base instanceof COSArray)
         {
+            objs.add(base);
             StringBuilder sb = new StringBuilder("COSArray{");
             for (COSBase x : (COSArray) base)
             {
@@ -1401,6 +1402,7 @@ public class COSDictionary extends COSBa
         }
         if (base instanceof COSObject)
         {
+            objs.add(base);
             COSObject obj = (COSObject) base;
             return "COSObject{"
                     + getDictionaryString(