From bd0e59f8cf52ff08d38ad30c50138a2483c2b341 Mon Sep 17 00:00:00 2001 From: "Kim F. Storm" Date: Wed, 24 Nov 2004 11:29:46 +0000 Subject: [PATCH] (move_it_in_display_line_to, display_line): Restore saved_face_id also when truncate-lines or hscrolled. --- src/xdisp.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/xdisp.c b/src/xdisp.c index d13f89ad27b..36892a219c0 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -5862,6 +5862,8 @@ move_it_in_display_line_to (it, to_charpos, to_x, op) result = MOVE_NEWLINE_OR_CR; break; } + if (it->method == next_element_from_display_vector) + it->face_id = it->saved_face_id; } #endif /* HAVE_WINDOW_SYSTEM */ result = MOVE_LINE_TRUNCATED; @@ -14628,8 +14630,12 @@ display_line (it) hscrolled. This may stop at an x-position < IT->first_visible_x if the first glyph is partially visible or if we hit a line end. */ if (it->current_x < it->first_visible_x) - move_it_in_display_line_to (it, ZV, it->first_visible_x, - MOVE_TO_POS | MOVE_TO_X); + { + move_it_in_display_line_to (it, ZV, it->first_visible_x, + MOVE_TO_POS | MOVE_TO_X); + if (it->method == next_element_from_display_vector) + it->face_id = it->saved_face_id; + } /* Get the initial row height. This is either the height of the text hscrolled, if there is any, or zero. */ @@ -14970,6 +14976,8 @@ display_line (it) row->exact_window_width_line_p = 1; goto at_end_of_line; } + if (it->method == next_element_from_display_vector) + it->face_id = it->saved_face_id; } } #endif /* HAVE_WINDOW_SYSTEM */ -- 2.39.5