[Indic] Implement reph positioning step 5

Not tuned, just copied from step 2.  Fixes another 0.5% of Kannada
failures.  1% to go.
This commit is contained in:
Behdad Esfahbod 2012-07-20 11:25:41 -04:00
parent a9e45c32e4
commit d0e68dbd0b
1 changed files with 11 additions and 1 deletions

View File

@ -999,7 +999,17 @@ final_reordering_syllable (hb_buffer_t *buffer,
*/
reph_step_5:
{
/* XXX */
/* Copied from step 2. */
new_reph_pos = start + 1;
while (new_reph_pos < base && !is_halant_or_coeng (info[new_reph_pos]))
new_reph_pos++;
if (new_reph_pos < base && is_halant_or_coeng (info[new_reph_pos])) {
/* ->If ZWJ or ZWNJ are following this halant, position is moved after it. */
if (new_reph_pos + 1 < base && is_joiner (info[new_reph_pos + 1]))
new_reph_pos++;
goto reph_move;
}
}
/* 6. Otherwise, reorder reph to the end of the syllable.