*** empty log message ***
authorhanda <handa>
Thu, 16 Aug 2007 05:11:12 +0000 (05:11 +0000)
committerhanda <handa>
Thu, 16 Aug 2007 05:11:12 +0000 (05:11 +0000)
flt.c

diff --git a/flt.c b/flt.c
index d7cf04a..6df60a8 100644 (file)
--- a/flt.c
+++ b/flt.c
@@ -771,33 +771,27 @@ setup_features (int gsubp, FontInfoHB *font_info, MFLT_OTF_Spec *spec,
   if (req_feature != 0xFFFF)
     info->indices[i++] = req_feature;
   for (j = 0; j < preordered; j++)
   if (req_feature != 0xFFFF)
     info->indices[i++] = req_feature;
   for (j = 0; j < preordered; j++)
-    {
-      if ((err = (gsubp
-                 ? HB_GSUB_Select_Feature (font_info->gsub, features[j],
-                                           script, langsys, &index)
-                 : HB_GPOS_Select_Feature (font_info->gpos, features[j],
-                                           script, langsys, &index)))
-         != HB_Err_Ok)
-       return err;
+    if ((err = (gsubp
+               ? HB_GSUB_Select_Feature (font_info->gsub, features[j],
+                                         script, langsys, &index)
+               : HB_GPOS_Select_Feature (font_info->gpos, features[j],
+                                         script, langsys, &index)))
+       == HB_Err_Ok)
       info->indices[i++] = index;
       info->indices[i++] = index;
-    }
   if (feature_list)
     for (j = 0; feature_list[j]; j++)
       {
        for (k = preordered + 1; k < count; k++)
          if (feature_list[j] == features[k])
            break;
   if (feature_list)
     for (j = 0; feature_list[j]; j++)
       {
        for (k = preordered + 1; k < count; k++)
          if (feature_list[j] == features[k])
            break;
-       if (k == count)
-         {
-           if ((gsubp
+       if (k == count
+           && ((gsubp
                 ? HB_GSUB_Select_Feature (font_info->gsub, feature_list[j],
                                           script, langsys, &index)
                 : HB_GPOS_Select_Feature (font_info->gpos, feature_list[j],
                                           script, langsys, &index))
                 ? HB_GSUB_Select_Feature (font_info->gsub, feature_list[j],
                                           script, langsys, &index)
                 : HB_GPOS_Select_Feature (font_info->gpos, feature_list[j],
                                           script, langsys, &index))
-               != FT_Err_Ok)
-             return -1;
-           info->indices[i++] = index;
-         }
+               == FT_Err_Ok))
+         info->indices[i++] = index;
       }
   info->count = i;
   return HB_Err_Ok;
       }
   info->count = i;
   return HB_Err_Ok;