|
From: | Gregory Heytings |
Subject: | bug#56682: Fix the long lines font locking related slowdowns |
Date: | Mon, 01 Aug 2022 13:38:40 +0000 |
diff --git a/src/xdisp.c b/src/xdisp.c index 8a19b3bda9..9574d06bd5 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -3472,6 +3472,9 @@ init_iterator (struct it *it, struct window *w, &it->bidi_it); } + if (current_buffer->long_line_optimizations_p) + it->narrowed_begv = 0; +Sorry, I wrote that this is OK, but it isn't: if init_iterator is called with 'struct it' that was already initialized by a previous call to 'reseat', the above will nuke the narrowing.So we need something more complicated. ATM I don't see how to solve this without manually initializing narrowed_begv before the first call to init_iterator or start_display. Hmm...
Hmmm... So I wasn't completely wrong when I wasn't sure it was TRT 😉 It's a chicken-and-egg problem. On the other hand, even if we nuke the narrowing there, it will be recomputed two lines later, which should be okay.
[Prev in Thread] | Current Thread | [Next in Thread] |