diff options
author | Eli Zaretskii <eliz@gnu.org> | 2022-06-24 14:14:41 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2022-06-24 14:14:41 +0300 |
commit | 391acd91344c833d94d89b2862b272d08643c068 (patch) | |
tree | a979b26e2eeea47c31fd6d68e2e0dd6b313a61b3 /src | |
parent | 66669c5c200d00f7fc4b112f3c418a3796915fee (diff) | |
download | emacs-391acd91344c833d94d89b2862b272d08643c068.tar.gz |
Fix assertion violation when 'max-redisplay-ticks' is set too low
* src/xdisp.c (update_redisplay_ticks): Disable 'scrolling_window'
optimization in 'update_window' when redisplay of a window is
aborted. (Bug#56184)
Diffstat (limited to 'src')
-rw-r--r-- | src/xdisp.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index 2e3711a20d8..c37a58ab4e1 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -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); } } |