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 2022/06/04 15:48:36 UTC

svn commit: r1901635 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType0Font.java

Author: tilman
Date: Sat Jun  4 15:48:36 2022
New Revision: 1901635

URL: http://svn.apache.org/viewvc?rev=1901635&view=rev
Log:
PDFBOX-4892: optimize and avoid NPE, as suggested by Valery Bokov

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

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType0Font.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType0Font.java?rev=1901635&r1=1901634&r2=1901635&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType0Font.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType0Font.java Sat Jun  4 15:48:36 2022
@@ -344,11 +344,12 @@ public class PDType0Font extends PDFont
         PDCIDSystemInfo ros = descendantFont.getCIDSystemInfo();
         if (ros != null)
         {
+            String ordering = ros.getOrdering();
             isDescendantCJK = "Adobe".equals(ros.getRegistry()) &&
-                    ("GB1".equals(ros.getOrdering()) || 
-                     "CNS1".equals(ros.getOrdering()) ||
-                     "Japan1".equals(ros.getOrdering()) ||
-                     "Korea1".equals(ros.getOrdering()));
+                    ("GB1".equals(ordering) || 
+                     "CNS1".equals(ordering) ||
+                     "Japan1".equals(ordering) ||
+                     "Korea1".equals(ordering));
         }
     }
 
@@ -374,9 +375,13 @@ public class PDType0Font extends PDFont
             String strName = null;
             if (isDescendantCJK)
             {
-                strName = descendantFont.getCIDSystemInfo().getRegistry() + "-" +
-                          descendantFont.getCIDSystemInfo().getOrdering() + "-" +
-                          descendantFont.getCIDSystemInfo().getSupplement();
+                PDCIDSystemInfo cidSystemInfo = descendantFont.getCIDSystemInfo();
+                if (cidSystemInfo != null)
+                {
+                    strName = cidSystemInfo.getRegistry() + "-" +
+                              cidSystemInfo.getOrdering() + "-" +
+                              cidSystemInfo.getSupplement();
+                }
             }
             else if (name != null)
             {