changeset 8164:4d505d18bb45

8065291: Improved font lookups Reviewed-by: prr
author bae
date Thu, 15 Jan 2015 22:22:24 +0400
parents a58b036057ef
children a43a96aba041
files src/share/native/sun/font/layout/LookupProcessor.cpp
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/native/sun/font/layout/LookupProcessor.cpp	Wed Jan 14 11:53:36 2015 +0400
+++ b/src/share/native/sun/font/layout/LookupProcessor.cpp	Thu Jan 15 22:22:24 2015 +0400
@@ -255,6 +255,7 @@
 
     if (requiredFeatureIndex != 0xFFFF) {
       requiredFeatureTable = featureListTable->getFeatureTable(featureListTable, requiredFeatureIndex, &requiredFeatureTag, success);
+      if (LE_FAILURE(success)) return;
       featureReferences += SWAPW(requiredFeatureTable->lookupCount);
     }
 
@@ -292,7 +293,7 @@
                 }
 
                 featureTable = featureListTable->getFeatureTable(featureListTable, featureIndex, &featureTag, success);
-
+                if (LE_FAILURE(success)) continue;
                 if (featureTag == fm.tag) {
                   count += selectLookups(featureTable, fm.mask, order + count, success);
                 }
@@ -319,7 +320,7 @@
 #endif
 
                 featureTable = featureListTable->getFeatureTable(featureListTable, featureIndex, &featureTag, success);
-
+                if (LE_FAILURE(success)) continue;
                 if (featureTag == fm.tag) {
                   order += selectLookups(featureTable, fm.mask, order, success);
                 }