Commit 4540d74c authored by Kim F. Storm's avatar Kim F. Storm
Browse files

(move_it_in_display_line_to): Fix MOVE_TO_POS case when

to_charpos corresponds to newline in right fringe.  Use local
BUFFER_POS_REACHED_P macro.
parent 992126de
......@@ -5594,15 +5594,18 @@ move_it_in_display_line_to (it, to_charpos, to_x, op)
saved_glyph_row = it->glyph_row;
it->glyph_row = NULL;
 
#define BUFFER_POS_REACHED_P() \
((op & MOVE_TO_POS) != 0 \
&& BUFFERP (it->object) \
&& IT_CHARPOS (*it) >= to_charpos)
while (1)
{
int x, i, ascent = 0, descent = 0;
 
/* Stop when ZV or TO_CHARPOS reached. */
if (!get_next_display_element (it)
|| ((op & MOVE_TO_POS) != 0
&& BUFFERP (it->object)
&& IT_CHARPOS (*it) >= to_charpos))
|| BUFFER_POS_REACHED_P ())
{
result = MOVE_POS_MATCH_OR_ZV;
break;
......@@ -5689,7 +5692,8 @@ move_it_in_display_line_to (it, to_charpos, to_x, op)
#ifdef HAVE_WINDOW_SYSTEM
if (IT_OVERFLOW_NEWLINE_INTO_FRINGE (it))
{
if (!get_next_display_element (it))
if (!get_next_display_element (it)
|| BUFFER_POS_REACHED_P ())
{
result = MOVE_POS_MATCH_OR_ZV;
break;
......@@ -5761,7 +5765,8 @@ move_it_in_display_line_to (it, to_charpos, to_x, op)
#ifdef HAVE_WINDOW_SYSTEM
if (IT_OVERFLOW_NEWLINE_INTO_FRINGE (it))
{
if (!get_next_display_element (it))
if (!get_next_display_element (it)
|| BUFFER_POS_REACHED_P ())
{
result = MOVE_POS_MATCH_OR_ZV;
break;
......@@ -5778,6 +5783,8 @@ move_it_in_display_line_to (it, to_charpos, to_x, op)
}
}
 
#undef BUFFER_POS_REACHED_P
/* Restore the iterator settings altered at the beginning of this
function. */
it->glyph_row = saved_glyph_row;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment