]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix assertion violation when 'max-redisplay-ticks' is set too low
authorEli Zaretskii <eliz@gnu.org>
Fri, 24 Jun 2022 11:14:41 +0000 (14:14 +0300)
committerEli Zaretskii <eliz@gnu.org>
Fri, 24 Jun 2022 11:14:41 +0000 (14:14 +0300)
* src/xdisp.c (update_redisplay_ticks): Disable 'scrolling_window'
optimization in 'update_window' when redisplay of a window is
aborted.  (Bug#56184)

src/xdisp.c

index 2e3711a20d8c32c6389e8e41c5df449bdebedf2b..c37a58ab4e190747e21c59d28957e64c37f9ff38 100644 (file)
@@ -17250,6 +17250,11 @@ update_redisplay_ticks (int ticks, struct window *w)
           : (char *) "<unknown>");
 
       windows_or_buffers_changed = 177;
+      /* scrolling_window depends too much on the glyph matrices being
+        correct, and we cannot guarantee that if we abort the
+        redisplay of this window.  */
+      if (w && w->desired_matrix)
+       w->desired_matrix->no_scrolling_p = true;
       error ("Window showing buffer %s takes too long to redisplay", bufname);
     }
 }