emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

feature/long-lines-improvements 38d970b748: ; * src/xdisp.c (reseat): Im


From: Gregory Heytings
Subject: feature/long-lines-improvements 38d970b748: ; * src/xdisp.c (reseat): Improve recomputations.
Date: Mon, 1 Aug 2022 11:03:21 -0400 (EDT)

branch: feature/long-lines-improvements
commit 38d970b748a23d3b8dad6feef8e392f1d6d3c9e5
Author: Gregory Heytings <gregory@heytings.org>
Commit: Gregory Heytings <gregory@heytings.org>

    ; * 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 9574d06bd5..c6fc05b8b4 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]