[unsafe-to-concat] Adjust Arabic-joining start boundary condition more

This commit is contained in:
Behdad Esfahbod 2022-01-22 09:44:13 -07:00
parent 11bdd7a020
commit 909e34f68a
5 changed files with 15 additions and 2 deletions

View File

@ -321,10 +321,20 @@ arabic_joining (hb_buffer_t *buffer)
info[prev].arabic_shaping_action() = entry->prev_action; info[prev].arabic_shaping_action() = entry->prev_action;
buffer->unsafe_to_break (prev, i + 1); buffer->unsafe_to_break (prev, i + 1);
} }
else if (2 <= state && state <= 5) /* States that have a possible prev_action. */ else
{ {
if (prev == UINT_MAX)
{
if (this_type >= JOINING_TYPE_R)
buffer->unsafe_to_concat_from_outbuffer (0, i + 1);
}
else
{
if (this_type >= JOINING_TYPE_R ||
(2 <= state && state <= 5) /* States that have a possible prev_action. */)
buffer->unsafe_to_concat (prev, i + 1); buffer->unsafe_to_concat (prev, i + 1);
} }
}
info[i].arabic_shaping_action() = entry->curr_action; info[i].arabic_shaping_action() = entry->curr_action;

View File

@ -59,6 +59,7 @@ TESTS = \
tests/tibetan-contractions-2.tests \ tests/tibetan-contractions-2.tests \
tests/tibetan-vowels.tests \ tests/tibetan-vowels.tests \
tests/tt-kern-gpos.tests \ tests/tt-kern-gpos.tests \
tests/unsafe-to-concat.tests \
tests/use-indic3.tests \ tests/use-indic3.tests \
tests/use-marchen.tests \ tests/use-marchen.tests \
tests/use-syllable.tests \ tests/use-syllable.tests \

View File

@ -59,6 +59,7 @@ in_house_tests_base = [
'tibetan-contractions-2.tests', 'tibetan-contractions-2.tests',
'tibetan-vowels.tests', 'tibetan-vowels.tests',
'tt-kern-gpos.tests', 'tt-kern-gpos.tests',
'unsafe-to-concat.tests',
'use-indic3.tests', 'use-indic3.tests',
'use-marchen.tests', 'use-marchen.tests',
'use-syllable.tests', 'use-syllable.tests',

View File

@ -0,0 +1 @@
../fonts/34da9aab7bee86c4dfc3b85e423435822fdf4b62.ttf;--show-flags;U+0628,U+200C,U+0628;[uni0628=1+993#2|uni0628=0+993#2]