From 1265e947113efe335139038c89c280db480994af Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 23 Nov 2019 12:43:49 +0200 Subject: [PATCH] Fix cursor display at EOL before extended face * src/xdisp.c (extend_face_to_end_of_line): Make sure the character position of the stretch glyph inserted to extend the face is zero, as various other parts of the display code rely on that. (Bug#38330) --- src/xdisp.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/xdisp.c b/src/xdisp.c index c5676b3e174..593aaa73ac9 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -21726,9 +21726,12 @@ extend_face_to_end_of_line (struct it *it) const int stretch_width = it->last_visible_x - it->current_x; if (stretch_width > 0) - append_stretch_glyph (it, Qnil, stretch_width, - it->ascent + it->descent, - stretch_ascent); + { + memset (&it->position, 0, sizeof it->position); + append_stretch_glyph (it, Qnil, stretch_width, + it->ascent + it->descent, + stretch_ascent); + } } it->char_to_display = saved_char; -- 2.39.5