Author: tilman
Date: Thu Sep  4 11:41:25 2025
New Revision: 1928228

Log:
PDFBOX-6059: avoid ClassCastException

Modified:
   
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDLayoutAttributeObject.java
   
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3CharProc.java
   
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java

Modified: 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDLayoutAttributeObject.java
==============================================================================
--- 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDLayoutAttributeObject.java
       Thu Sep  4 11:41:13 2025        (r1928227)
+++ 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDLayoutAttributeObject.java
       Thu Sep  4 11:41:25 2025        (r1928228)
@@ -19,6 +19,7 @@ package org.apache.pdfbox.pdmodel.docume
 import org.apache.pdfbox.cos.COSArray;
 import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSDictionary;
+import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.pdmodel.common.PDRectangle;
 import org.apache.pdfbox.pdmodel.graphics.color.PDGamma;
 
@@ -840,8 +841,7 @@ public class PDLayoutAttributeObject ext
      */
     public PDRectangle getBBox()
     {
-        COSArray array =
-            (COSArray) this.getCOSObject().getDictionaryObject(BBOX);
+        COSArray array = this.getCOSObject().getCOSArray(COSName.BBOX);
         if (array != null)
         {
             return new PDRectangle(array);

Modified: 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3CharProc.java
==============================================================================
--- 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3CharProc.java
        Thu Sep  4 11:41:13 2025        (r1928227)
+++ 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3CharProc.java
        Thu Sep  4 11:41:25 2025        (r1928228)
@@ -26,7 +26,6 @@ import org.apache.commons.logging.LogFac
 import org.apache.pdfbox.contentstream.PDContentStream;
 import org.apache.pdfbox.contentstream.operator.Operator;
 import org.apache.pdfbox.cos.COSBase;
-import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSNumber;
 import org.apache.pdfbox.cos.COSStream;
@@ -93,7 +92,7 @@ public final class PDType3CharProc imple
             // PDFBOX-5294
             LOG.warn("Using resources dictionary found in charproc entry");
             LOG.warn("This should have been in the font or in the page 
dictionary");
-            return new PDResources((COSDictionary) 
charStream.getDictionaryObject(COSName.RESOURCES));
+            return new 
PDResources(charStream.getCOSDictionary(COSName.RESOURCES));
         }
         return font.getResources();
     }

Modified: 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java
==============================================================================
--- 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java
   Thu Sep  4 11:41:13 2025        (r1928227)
+++ 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java
   Thu Sep  4 11:41:25 2025        (r1928228)
@@ -173,7 +173,7 @@ public final class PDSoftMask implements
     {
         if (backdropColor == null)
         {
-            backdropColor = (COSArray) 
getCOSObject().getDictionaryObject(COSName.BC);
+            backdropColor = getCOSObject().getCOSArray(COSName.BC);
         }
         return backdropColor;
     }

Reply via email to