From 38d970b748a23d3b8dad6feef8e392f1d6d3c9e5 Mon Sep 17 00:00:00 2001 From: Gregory Heytings Date: Mon, 1 Aug 2022 15:01:15 +0000 Subject: [PATCH] ; * src/xdisp.c (reseat): Improve recomputations. --- src/xdisp.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/xdisp.c b/src/xdisp.c index 9574d06bd5c..c6fc05b8b4a 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -7531,13 +7531,17 @@ reseat (struct it *it, struct text_pos pos, bool force_p) if (current_buffer->long_line_optimizations_p) { - if (!it->narrowed_begv - || ((pos.charpos < it->narrowed_begv || pos.charpos > it->narrowed_zv) - && (!redisplaying_p || it->line_wrap == TRUNCATE))) + if (!it->narrowed_begv) { it->narrowed_begv = get_narrowed_begv (it->w, window_point (it->w)); it->narrowed_zv = get_narrowed_zv (it->w, window_point (it->w)); } + else if ((pos.charpos < it->narrowed_begv || pos.charpos > it->narrowed_zv) + && (!redisplaying_p || it->line_wrap == TRUNCATE)) + { + it->narrowed_begv = get_narrowed_begv (it->w, pos.charpos); + it->narrowed_zv = get_narrowed_zv (it->w, pos.charpos); + } } /* Determine where to check text properties. Avoid doing it -- 2.39.5