diff options
author | Martin Rudalics <rudalics@gmx.at> | 2012-10-15 11:03:56 +0200 |
---|---|---|
committer | Martin Rudalics <rudalics@gmx.at> | 2012-10-15 11:03:56 +0200 |
commit | dca778d53aad12df44dbac8f99c288fa4f9f04b2 (patch) | |
tree | 2f33b5d4c67298a64b319c8ff62a81f11b2f9f35 /src/window.c | |
parent | d18a0d2460cbcf73f9bd136912006fc0c11f55e0 (diff) | |
download | emacs-dca778d53aad12df44dbac8f99c288fa4f9f04b2.tar.gz |
Fix Fwindow_end's handling of cached position (Bug#12600).
* window.c (Fwindow_end): Rewrite check whether cached position
can be used (Bug#12600).
(resize_frame_windows, grow_mini_window, shrink_mini_window):
Set windows_or_buffers_changed.
Diffstat (limited to 'src/window.c')
-rw-r--r-- | src/window.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/window.c b/src/window.c index 61d2a8b073f..b4fee61cac8 100644 --- a/src/window.c +++ b/src/window.c @@ -1464,9 +1464,7 @@ if it isn't already recorded. */) #endif if (! NILP (update) - && ! (! NILP (w->window_end_valid) - && w->last_modified >= BUF_MODIFF (b) - && w->last_overlay_modified >= BUF_OVERLAY_MODIFF (b)) + && (windows_or_buffers_changed || NILP (w->window_end_valid)) && !noninteractive) { struct text_pos startp; @@ -3795,6 +3793,8 @@ resize_frame_windows (struct frame *f, int size, int horflag) (m, make_number (XINT (r->top_line) + XINT (r->total_lines))); } } + + windows_or_buffers_changed++; } @@ -4208,6 +4208,7 @@ grow_mini_window (struct window *w, int delta) w->last_modified = 0; w->last_overlay_modified = 0; + windows_or_buffers_changed++; adjust_glyphs (f); unblock_input (); } @@ -4245,6 +4246,7 @@ shrink_mini_window (struct window *w) w->last_modified = 0; w->last_overlay_modified = 0; + windows_or_buffers_changed++; adjust_glyphs (f); unblock_input (); } |