diff options
Diffstat (limited to 'src/indent.c')
-rw-r--r-- | src/indent.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/indent.c b/src/indent.c index 04837f8f513..33bf424b344 100644 --- a/src/indent.c +++ b/src/indent.c @@ -2080,11 +2080,7 @@ whether or not it is currently displayed in some window. */) } else it_overshoot_count = - (!(it.method == GET_FROM_IMAGE - || it.method == GET_FROM_STRETCH) - /* We will overshoot if lines are truncated and PT lies - beyond the right margin of the window. */ - || it.line_wrap == TRUNCATE); + !(it.method == GET_FROM_IMAGE || it.method == GET_FROM_STRETCH); if (start_x_given) { @@ -2142,6 +2138,11 @@ whether or not it is currently displayed in some window. */) screen lines we need to backtrack. */ it_overshoot_count = it.vpos; } + /* We will overshoot if lines are truncated and point lies + beyond the right margin of the window. */ + if (it.line_wrap == TRUNCATE && it.current_x >= it.last_visible_x + && it_overshoot_count == 0) + it_overshoot_count = 1; if (it_overshoot_count > 0) move_it_by_lines (&it, -it_overshoot_count); |