diff --git a/src/hb-ot-shape-complex-arabic.cc b/src/hb-ot-shape-complex-arabic.cc index 283f325b4..eda20ca1e 100644 --- a/src/hb-ot-shape-complex-arabic.cc +++ b/src/hb-ot-shape-complex-arabic.cc @@ -560,6 +560,7 @@ apply_stch (const hb_ot_shape_plan_t *plan, } else { + buffer->unsafe_to_break (context, end + 1); hb_position_t x_offset = 0; for (unsigned int k = end; k > start; k--) { diff --git a/test/shaping/Makefile.am b/test/shaping/Makefile.am index 377c08d0e..ca7c1c30b 100644 --- a/test/shaping/Makefile.am +++ b/test/shaping/Makefile.am @@ -45,6 +45,7 @@ TESTS = \ tests/arabic-feature-order.tests \ tests/arabic-like-joining.tests \ tests/arabic-mark-order.tests \ + tests/arabic-stch.tests \ tests/automatic-fractions.tests \ tests/cluster.tests \ tests/color-fonts.tests \ diff --git a/test/shaping/fonts/sha1sum/d9b8bc10985f24796826c29f7ccba3d0ae11ec02.ttf b/test/shaping/fonts/sha1sum/d9b8bc10985f24796826c29f7ccba3d0ae11ec02.ttf new file mode 100644 index 000000000..112146eb4 Binary files /dev/null and b/test/shaping/fonts/sha1sum/d9b8bc10985f24796826c29f7ccba3d0ae11ec02.ttf differ diff --git a/test/shaping/tests/arabic-stch.tests b/test/shaping/tests/arabic-stch.tests new file mode 100644 index 000000000..a268d8a7c --- /dev/null +++ b/test/shaping/tests/arabic-stch.tests @@ -0,0 +1 @@ +fonts/sha1sum/d9b8bc10985f24796826c29f7ccba3d0ae11ec02.ttf:--no-glyph-names --show-flags:U+0718,U+070F,U+0718,U+0718,U+002E:[1=4+168|3=3+502#1|3=2+502#1|4=1@-1004,0+0#1|5=1@-876,0+0#1|5=1@-799,0+0#1|5=1@-722,0+0#1|5=1@-645,0+0#1|4=1@-566,0+0#1|5=1@-438,0+0#1|5=1@-361,0+0#1|5=1@-284,0+0#1|5=1@-207,0+0#1|4=1@-128,0+0#1|3=0+502]