From: Kim F. Storm Date: Sun, 1 May 2005 21:42:34 +0000 (+0000) Subject: (move_it_in_display_line_to): Stop if we move beyond TO_CHARPOS. X-Git-Tag: ttn-vms-21-2-B4~608 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=20b44bb85a371689df831747244dde427dbfa52b;p=emacs.git (move_it_in_display_line_to): Stop if we move beyond TO_CHARPOS. This may happen if last glyphs was an image or stretch glyph. --- diff --git a/src/xdisp.c b/src/xdisp.c index 19323ffa6d5..80b2981c5be 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -5877,6 +5877,15 @@ move_it_in_display_line_to (it, to_charpos, to_x, op) { int x, i, ascent = 0, descent = 0; + /* Stop if we move beyond TO_CHARPOS (after an image or stretch glyph). */ + if ((op & MOVE_TO_POS) != 0 + && BUFFERP (it->object) + && IT_CHARPOS (*it) > to_charpos) + { + result = MOVE_POS_MATCH_OR_ZV; + break; + } + /* Stop when ZV reached. We used to stop here when TO_CHARPOS reached as well, but that is too soon if this glyph does not fit on this line. So we handle it