+2011-07-07 Kenichi Handa <handa@m17n.org>
+
+ * composite.c (composition_compute_stop_pos): Ignore a static
+ composition starting before CHARPOS (Bug#8915).
+
+ * xdisp.c (handle_composition_prop): Likewise.
+
2011-07-07 Eli Zaretskii <eliz@gnu.org>
* term.c (produce_glyphs) <xassert>: Allow IT_GLYPHLESS in it->what.
/* FIXME: Bidi is not yet handled well in static composition. */
if (charpos < endpos
&& find_composition (charpos, endpos, &start, &end, &prop, string)
+ && start >= charpos
&& COMPOSITION_VALID_P (start, end, prop))
{
cmp_it->stop_pos = endpos = start;
&& COMPOSITION_VALID_P (start, end, prop)
&& (STRINGP (it->string) || (PT <= start || PT >= end)))
{
+ if (start < pos)
+ /* As we can't handle this situation (perhaps font-lock added
+ a new composition), we just return here hoping that next
+ redisplay will detect this composition much earlier. */
+ return HANDLED_NORMALLY;
if (start != pos)
{
if (STRINGP (it->string))