d2ed82
diff -ru orig.icu/source/layout/LookupProcessor.cpp icu/source/layout/LookupProcessor.cpp
d2ed82
--- orig.icu/source/layout/LookupProcessor.cpp	2013-04-18 23:32:30.000000000 +0200
d2ed82
+++ icu/source/layout/LookupProcessor.cpp	2013-07-17 01:09:57.792635999 +0200
d2ed82
@@ -220,7 +220,9 @@
d2ed82
 
d2ed82
     if (requiredFeatureIndex != 0xFFFF) {
d2ed82
       requiredFeatureTable = featureListTable->getFeatureTable(featureListTable, requiredFeatureIndex, &requiredFeatureTag, success);
d2ed82
-      featureReferences += SWAPW(featureTable->lookupCount);
d2ed82
+      if (requiredFeatureTable.isValid()) {
d2ed82
+        featureReferences += SWAPW(requiredFeatureTable->lookupCount);
d2ed82
+      }
d2ed82
     }
d2ed82
 
d2ed82
     lookupOrderArray = LE_NEW_ARRAY(le_uint16, featureReferences);