Fix bug #17823 with vertical-motion in lines with line-prefix.
src/indent.c (Fvertical_motion): Move to the goal column, if any, with a single call to move_it_in_display_line, not in two calls. Doing this with two calls causes move_it_in_display_line apply the line-prefix handling twice instead of just once.
This commit is contained in:
parent
3114d9e702
commit
53b15fa6dc
2 changed files with 10 additions and 12 deletions
|
@ -1,6 +1,10 @@
|
|||
2014-06-21 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* indent.c (Fvertical_motion): Doc fix.
|
||||
Move to the goal column, if any, with a single call to
|
||||
move_it_in_display_line, not in two calls. Doing this with two
|
||||
calls causes move_it_in_display_line apply the line-prefix
|
||||
handling twice instead of just once. (Bug#17823)
|
||||
|
||||
2014-06-21 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
|
|
18
src/indent.c
18
src/indent.c
|
@ -2129,20 +2129,14 @@ whether or not it is currently displayed in some window. */)
|
|||
}
|
||||
}
|
||||
|
||||
/* Move to the goal column, if one was specified. */
|
||||
/* Move to the goal column, if one was specified. If the window
|
||||
was originally hscrolled, the goal column is interpreted as
|
||||
an addition to the hscroll amount. */
|
||||
if (!NILP (lcols))
|
||||
{
|
||||
/* If the window was originally hscrolled, move forward by
|
||||
the hscrolled amount first. */
|
||||
if (first_x > 0)
|
||||
{
|
||||
move_it_in_display_line (&it, ZV, first_x, MOVE_TO_X);
|
||||
it.current_x = 0;
|
||||
}
|
||||
move_it_in_display_line
|
||||
(&it, ZV,
|
||||
(int)(cols * FRAME_COLUMN_WIDTH (XFRAME (w->frame)) + 0.5),
|
||||
MOVE_TO_X);
|
||||
int to_x = (int)(cols * FRAME_COLUMN_WIDTH (XFRAME (w->frame)) + 0.5);
|
||||
|
||||
move_it_in_display_line (&it, ZV, first_x + to_x, MOVE_TO_X);
|
||||
}
|
||||
|
||||
SET_PT_BOTH (IT_CHARPOS (it), IT_BYTEPOS (it));
|
||||
|
|
Loading…
Add table
Reference in a new issue