Fix finding a stop position for composition.

This commit is contained in:
Kenichi Handa 2010-08-25 09:54:05 +09:00
parent 2c0ac86767
commit ff94e32cb3
2 changed files with 16 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2010-08-25 Kenichi Handa <handa@m17n.org>
* composite.c (composition_compute_stop_pos): In forward search,
pay attention to the possibility that some character after ENDPOS
will be composed with charactrs before ENDPOS.
2010-08-19 Jan Djärv <jan.h.d@swipnet.se>
* nsselect.m (nxatoms_of_nsselect): Use "Selection" and "Secondary".

View file

@ -1091,6 +1091,16 @@ composition_compute_stop_pos (struct composition_it *cmp_it, EMACS_INT charpos,
}
}
}
if (charpos == endpos)
{
/* We couldn't find a composition point before ENDPOS. But,
some character after ENDPOS may be composed with
characters before ENDPOS. So, we should stop at the safe
point. */
charpos = endpos - MAX_AUTO_COMPOSITION_LOOKBACK;
if (charpos < start)
charpos = start;
}
}
else if (charpos > endpos)
{