From 3c3eb5ea9ccf34d33e94f83b9961b3a5e903d196 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Tue, 13 Nov 2018 21:10:10 -0500 Subject: [PATCH] [aat] Disable fallback mark advance zeroing and positioning if morx applied Fixes https://github.com/harfbuzz/harfbuzz/issues/1357 --- src/hb-ot-shape.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc index 459e1229..a383b782 100644 --- a/src/hb-ot-shape.cc +++ b/src/hb-ot-shape.cc @@ -138,9 +138,9 @@ hb_ot_shape_planner_t::compile (hb_ot_shape_plan_t &plan, } bool has_kern_mark = plan.apply_kern && hb_ot_layout_has_cross_kerning (face); - plan.zero_marks = !plan.apply_kerx && !has_kern_mark; + plan.zero_marks = !plan.apply_morx && !plan.apply_kerx && !has_kern_mark; plan.has_gpos_mark = !!plan.map.get_1_mask (HB_TAG ('m','a','r','k')); - plan.fallback_mark_positioning = !plan.apply_gpos && !plan.apply_kerx && !has_kern_mark; + plan.fallback_mark_positioning = !plan.apply_gpos && plan.zero_marks; /* Currently we always apply trak. */ plan.apply_trak = plan.requested_tracking && hb_aat_layout_has_tracking (face); -- GitLab