Commit 6fa3176c authored by Eli Zaretskii's avatar Eli Zaretskii
Browse files

Prevent display corruption when display-line-numbers is set

* src/xdisp.c (try_window_reusing_current_matrix): If giving up
due to display-line-numbers, clear the window's desired glyph
matrix before returning, as the following call to try_window will
call display_line, which expects rows of the desired matrix
cleared.  (Bug#27668)
parent 5c9b6e90
......@@ -17655,6 +17655,9 @@ try_window_reusing_current_matrix (struct window *w)
if (w->vscroll || MATRIX_ROW_PARTIALLY_VISIBLE_P (w, start_row))
return false;
 
/* Clear the desired matrix for the display below. */
clear_glyph_matrix (w->desired_matrix);
/* Give up if line numbers are being displayed, because reusing the
current matrix might use the wrong width for line-number
display. */
......@@ -17667,9 +17670,6 @@ try_window_reusing_current_matrix (struct window *w)
start = start_row->minpos;
start_vpos = MATRIX_ROW_VPOS (start_row, w->current_matrix);
 
/* Clear the desired matrix for the display below. */
clear_glyph_matrix (w->desired_matrix);
if (CHARPOS (new_start) <= CHARPOS (start))
{
/* Don't use this method if the display starts with an ellipsis
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