Author: tilman
Date: Tue Jun 24 13:06:30 2025
New Revision: 1926693
URL: http://svn.apache.org/viewvc?rev=1926693&view=rev
Log:
PDFBOX-6025: avoid ClassCastException
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDStructureElementNameTreeNode.java
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/PDIntegerNameTreeNode.java
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDStructureElementNameTreeNode.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDStructureElementNameTreeNode.java?rev=1926693&r1=1926692&r2=1926693&view=diff
==============================================================================
---
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDStructureElementNameTreeNode.java
(original)
+++
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDStructureElementNameTreeNode.java
Tue Jun 24 13:06:30 2025
@@ -51,6 +51,10 @@ public class PDStructureElementNameTreeN
@Override
protected PDStructureElement convertCOSToPD( COSBase base ) throws
IOException
{
+ if (!(base instanceof COSDictionary))
+ {
+ throw new IOException("dictionary expected here, but got " + base);
+ }
return new PDStructureElement((COSDictionary)base);
}
Modified:
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/PDIntegerNameTreeNode.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/PDIntegerNameTreeNode.java?rev=1926693&r1=1926692&r2=1926693&view=diff
==============================================================================
---
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/PDIntegerNameTreeNode.java
(original)
+++
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/PDIntegerNameTreeNode.java
Tue Jun 24 13:06:30 2025
@@ -50,6 +50,10 @@ public class PDIntegerNameTreeNode exten
@Override
protected COSInteger convertCOSToPD(COSBase base) throws IOException
{
+ if (!(base instanceof COSInteger))
+ {
+ throw new IOException("integer expected here, but got " + base);
+ }
return (COSInteger)base;
}