Author: rmeyer
Date: Tue Dec  3 10:05:07 2013
New Revision: 1547330

URL: http://svn.apache.org/r1547330
Log:
FOP-2323: NPE caused by missing local subroutine index in private dictonary of 
OTF font

Modified:
    
xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java

Modified: 
xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java?rev=1547330&r1=1547329&r2=1547330&view=diff
==============================================================================
--- 
xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java 
(original)
+++ 
xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java 
Tue Dec  3 10:05:07 2013
@@ -561,8 +561,12 @@ public class OTFSubSetFile extends OTFFi
             int privateOffset = privateEntry.getOperands().get(1).intValue();
             Map<String, DICTEntry> privateDICT = 
cffReader.getPrivateDict(privateEntry);
 
-            int localSubrOffset = privateOffset + 
privateDICT.get("Subrs").getOperands().get(0).intValue();
-            localIndexSubr = cffReader.readIndex(localSubrOffset);
+            if (privateDICT.get("Subrs") != null) {
+                int localSubrOffset = privateOffset + 
privateDICT.get("Subrs").getOperands().get(0).intValue();
+                localIndexSubr = cffReader.readIndex(localSubrOffset);
+            } else {
+                localIndexSubr = cffReader.readIndex(null);
+            }
         }
 
         globalIndexSubr = cffReader.getGlobalIndexSubr();



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to