Commit 94a4e898 authored by Dmitry Antipov's avatar Dmitry Antipov

* xdisp.c (redisplay_window): If window_end_valid is cleared due to

non-zero windows_or_buffers_changed, clear current_matrix_up_to_date_p
and so do not call to try_cursor_movement for that window.
parent aab1fcdf
...@@ -10,6 +10,9 @@ ...@@ -10,6 +10,9 @@
* xdisp.c (adjust_window_ends): Move duplicated code to new function. * xdisp.c (adjust_window_ends): Move duplicated code to new function.
(try_window, try_window_reusing_current_matrix, try_window_id): Use it. (try_window, try_window_reusing_current_matrix, try_window_id): Use it.
(redisplay_window): If window_end_valid is cleared due to non-zero
windows_or_buffers_changed, clear current_matrix_up_to_date_p and
so do not call to try_cursor_movement for that window.
2013-08-14 Dmitry Antipov <dmantipov@yandex.ru> 2013-08-14 Dmitry Antipov <dmantipov@yandex.ru>
......
...@@ -15449,8 +15449,8 @@ redisplay_window (Lisp_Object window, int just_this_one_p) ...@@ -15449,8 +15449,8 @@ redisplay_window (Lisp_Object window, int just_this_one_p)
&& !current_buffer->clip_changed && !current_buffer->clip_changed
&& !window_outdated (w)); && !window_outdated (w));
/* When windows_or_buffers_changed is non-zero, we can't rely on /* When windows_or_buffers_changed is non-zero, we can't rely
the window end being valid, so set it to nil there. */ on the window end being valid, so set it to zero there. */
if (windows_or_buffers_changed) if (windows_or_buffers_changed)
{ {
/* If window starts on a continuation line, maybe adjust the /* If window starts on a continuation line, maybe adjust the
...@@ -15459,6 +15459,9 @@ redisplay_window (Lisp_Object window, int just_this_one_p) ...@@ -15459,6 +15459,9 @@ redisplay_window (Lisp_Object window, int just_this_one_p)
compute_window_start_on_continuation_line (w); compute_window_start_on_continuation_line (w);
w->window_end_valid = 0; w->window_end_valid = 0;
/* If so, we also can't rely on current matrix
and should not fool try_cursor_movement below. */
current_matrix_up_to_date_p = 0;
} }
/* Some sanity checks. */ /* Some sanity checks. */
......
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