diff options
| author | Eli Zaretskii | 2015-10-01 19:56:46 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2015-10-01 19:56:46 +0300 |
| commit | c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59 (patch) | |
| tree | 18da8fafeb119d518b6dde52dbaca24fb015fefc /src | |
| parent | 7a94cf9656839fb4072f3dd2eb1859e5f2c64f94 (diff) | |
| download | emacs-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.c | 7 |
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 |