Author: tilman
Date: Tue Mar  3 09:04:04 2026
New Revision: 1932122

Log:
PDFBOX-6172: avoid ClassCastException with SourceSansProBold.otf from FOP 2432

Modified:
   
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java
        Tue Mar  3 09:03:59 2026        (r1932121)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDCIDFontType2Embedder.java
        Tue Mar  3 09:04:04 2026        (r1932122)
@@ -27,6 +27,7 @@ import java.util.Set;
 import java.util.TreeMap;
 import org.apache.fontbox.cff.CFFCIDFont;
 import org.apache.fontbox.cff.CFFCharset;
+import org.apache.fontbox.cff.CFFFont;
 import org.apache.fontbox.ttf.CFFTable;
 
 import org.apache.logging.log4j.Logger;
@@ -239,8 +240,8 @@ final class PDCIDFontType2Embedder exten
         {
             return;
         }
-        CFFCIDFont cff = (CFFCIDFont) cffTable.getFont();
-        if (cff == null)
+        CFFFont cff = cffTable.getFont();
+        if (!(cff instanceof CFFCIDFont))
         {
             return;
         }
@@ -308,7 +309,7 @@ final class PDCIDFontType2Embedder exten
         }
 
         InputStream input = new ByteArrayInputStream(bytes);
-        PDStream stream = new PDStream(document, input, COSName.FLATE_DECODE);
+        PDStream stream = new PDStream(document, input, bytes.length < 20 ? 
null : COSName.FLATE_DECODE);
 
         fontDescriptor.setCIDSet(stream);
     }

Reply via email to