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 2018/07/25 16:26:38 UTC

svn commit: r1836646 - /pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3Font.java

Author: tilman
Date: Wed Jul 25 16:26:38 2018
New Revision: 1836646

URL: http://svn.apache.org/viewvc?rev=1836646&view=rev
Log:
PDFBOX-4071: avoid ClassCastException

Modified:
    pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3Font.java

Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3Font.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3Font.java?rev=1836646&r1=1836645&r2=1836646&view=diff
==============================================================================
--- pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3Font.java (original)
+++ pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType3Font.java Wed Jul 25 16:26:38 2018
@@ -113,8 +113,8 @@ public class PDType3Font extends PDSimpl
     @Override
     public boolean hasGlyph(String name) throws IOException
     {
-        COSStream stream = (COSStream) getCharProcs().getDictionaryObject(COSName.getPDFName(name));
-        return stream != null;
+        COSBase base = getCharProcs().getDictionaryObject(COSName.getPDFName(name));
+        return base instanceof COSStream;
     }
 
     @Override
@@ -224,10 +224,10 @@ public class PDType3Font extends PDSimpl
     {
         if (fontMatrix == null)
         {
-            COSArray array = (COSArray) dict.getDictionaryObject(COSName.FONT_MATRIX);
-            if (array != null)
+            COSBase base = dict.getDictionaryObject(COSName.FONT_MATRIX);
+            if (base instanceof COSArray)
             {
-                fontMatrix = new Matrix(array);
+                fontMatrix = new Matrix((COSArray) base);
             }
             else
             {
@@ -253,10 +253,10 @@ public class PDType3Font extends PDSimpl
     {
         if (resources == null)
         {
-            COSDictionary resourcesDict = (COSDictionary) dict.getDictionaryObject(COSName.RESOURCES);
-            if (resourcesDict != null)
+            COSBase base = dict.getDictionaryObject(COSName.RESOURCES);
+            if (base instanceof COSDictionary)
             {
-                this.resources = new PDResources(resourcesDict);
+                this.resources = new PDResources((COSDictionary) base);
             }
         }
         return resources;
@@ -269,11 +269,11 @@ public class PDType3Font extends PDSimpl
      */
     public PDRectangle getFontBBox()
     {
-        COSArray rect = (COSArray) dict.getDictionaryObject(COSName.FONT_BBOX);
+         COSBase base = dict.getDictionaryObject(COSName.FONT_BBOX);
         PDRectangle retval = null;
-        if(rect != null)
+        if (base instanceof COSArray)
         {
-            retval = new PDRectangle(rect);
+            retval = new PDRectangle((COSArray) base);
         }
         return retval;
     }