From a51a661fe1dcfdd3a274a6be6ad741c68d430c8c Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Tue, 21 Jul 2015 18:24:21 +0100 Subject: [PATCH] [USE] Only reorder the first component of a split left mark --- src/hb-ot-shape-complex-use.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/hb-ot-shape-complex-use.cc b/src/hb-ot-shape-complex-use.cc index 208da6209..309f22198 100644 --- a/src/hb-ot-shape-complex-use.cc +++ b/src/hb-ot-shape-complex-use.cc @@ -364,7 +364,10 @@ reorder_syllable (const hb_ot_shape_plan_t *plan, else j = i; } - else if (((flag) & (FLAG (USE_VPre) | FLAG (USE_VMPre))) && j < i) + else if (((flag) & (FLAG (USE_VPre) | FLAG (USE_VMPre))) && + /* Only move the first component of a MultipleSubst. */ + 0 == _hb_glyph_info_get_lig_comp (&info[i]) && + j < i) { hb_glyph_info_t t = info[i]; memmove (&info[j + 1], &info[j], (i - j) * sizeof (info[0]));