From 20b44bb85a371689df831747244dde427dbfa52b Mon Sep 17 00:00:00 2001 From: "Kim F. Storm" Date: Sun, 1 May 2005 21:42:34 +0000 Subject: [PATCH] (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. --- src/xdisp.c | 9 +++++++++ 1 file changed, 9 insertions(+) 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 -- 2.39.2