aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2015-10-01 19:56:46 +0300
committerEli Zaretskii2015-10-01 19:56:46 +0300
commitc4c1fb97727ff52bcfa83ad5ed94a64a93d12e59 (patch)
tree18da8fafeb119d518b6dde52dbaca24fb015fefc /src
parent7a94cf9656839fb4072f3dd2eb1859e5f2c64f94 (diff)
downloademacs-c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.tar.gz
emacs-c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.zip
Attempt to fix slow redisplay caused by last changes
* src/xdisp.c (try_window_id, try_window_reusing_current_matrix) (try_cursor_movement): Relax requirements for redisplay optimizations for the selected frame. (Bug#21597)
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index bc76384a4f9..a2a6a81d4ec 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -15438,7 +15438,7 @@ try_cursor_movement (Lisp_Object window, struct text_pos startp,
15438 && !update_mode_lines 15438 && !update_mode_lines
15439 && !windows_or_buffers_changed 15439 && !windows_or_buffers_changed
15440 && !f->cursor_type_changed 15440 && !f->cursor_type_changed
15441 && !f->redisplay 15441 && !(f != SELECTED_FRAME () && f->redisplay)
15442 && NILP (Vshow_trailing_whitespace) 15442 && NILP (Vshow_trailing_whitespace)
15443 /* This code is not used for mini-buffer for the sake of the case 15443 /* This code is not used for mini-buffer for the sake of the case
15444 of redisplaying to replace an echo area message; since in 15444 of redisplaying to replace an echo area message; since in
@@ -17049,7 +17049,7 @@ try_window_reusing_current_matrix (struct window *w)
17049 /* Don't try to reuse the display if windows have been split 17049 /* Don't try to reuse the display if windows have been split
17050 or such. */ 17050 or such. */
17051 || windows_or_buffers_changed 17051 || windows_or_buffers_changed
17052 || f->redisplay 17052 || (f != SELECTED_FRAME () && f->redisplay)
17053 || f->cursor_type_changed) 17053 || f->cursor_type_changed)
17054 return false; 17054 return false;
17055 17055
@@ -17827,7 +17827,8 @@ try_window_id (struct window *w)
17827 GIVE_UP (1); 17827 GIVE_UP (1);
17828 17828
17829 /* This flag is used to prevent redisplay optimizations. */ 17829 /* This flag is used to prevent redisplay optimizations. */
17830 if (windows_or_buffers_changed || f->cursor_type_changed || f->redisplay) 17830 if (windows_or_buffers_changed || f->cursor_type_changed
17831 || (f != SELECTED_FRAME () && f->redisplay))
17831 GIVE_UP (2); 17832 GIVE_UP (2);
17832 17833
17833 /* This function's optimizations cannot be used if overlays have 17834 /* This function's optimizations cannot be used if overlays have