[khmer] Reinstate a pause after basic features

This was removed as part of 044d7a06db,
which caused the regression.  Just adding a pause fixes the shaping.
Debugged by just tracing the good/bad shaping and observing the
lookup orders intermingling in the bad shaping.

Test:
hb-shape LeelawUI.ttf --unicodes U+1780,U+17D2,U+179A,U+17BB

Fixes https://github.com/harfbuzz/harfbuzz/issues/3531
This commit is contained in:
Behdad Esfahbod 2022-04-13 11:51:48 -06:00
parent cc0f1f3b60
commit ec925ece05
1 changed files with 8 additions and 1 deletions

View File

@ -110,7 +110,14 @@ collect_features_khmer (hb_ot_shape_planner_t *plan)
map->enable_feature (HB_TAG('l','o','c','l'), F_PER_SYLLABLE);
map->enable_feature (HB_TAG('c','c','m','p'), F_PER_SYLLABLE);
for (unsigned i = 0; i < KHMER_NUM_FEATURES; i++)
unsigned int i = 0;
for (; i < KHMER_BASIC_FEATURES; i++)
map->add_feature (khmer_features[i]);
/* https://github.com/harfbuzz/harfbuzz/issues/3531 */
map->add_gsub_pause (nullptr);
for (; i < KHMER_NUM_FEATURES; i++)
map->add_feature (khmer_features[i]);
}