summaryrefslogtreecommitdiff
path: root/src/xdisp.c
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1998-10-12 01:38:50 +0000
committerRichard M. Stallman <rms@gnu.org>1998-10-12 01:38:50 +0000
commitb5174a51038a782ff1d80f303252f04b72dbdc03 (patch)
treeb69a434df1897701a8517c3a8fa9ea4cfef113bb /src/xdisp.c
parent4fba3b2c067e2665e38b9557eb230cefcbb33235 (diff)
downloademacs-b5174a51038a782ff1d80f303252f04b72dbdc03.tar.gz
(redisplay_window): Clear w->window_end_valid
before running the window-scroll-functions hook, if appropriate.
Diffstat (limited to 'src/xdisp.c')
-rw-r--r--src/xdisp.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index 9abc887a747..f2551fc1cbd 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -1951,6 +1951,8 @@ redisplay_window (window, just_this_one, preserve_echo_area)
w->force_start = Qnil;
/* Forget any recorded base line for line number display. */
w->base_line_number = Qnil;
+ /* The old bottom-of-screen position is no longer valid. */
+ w->window_end_valid = Qnil;
/* Redisplay the mode line. Select the buffer properly for that.
Also, run the hook window-scroll-functions
because we have scrolled. */
@@ -2275,6 +2277,8 @@ redisplay_window (window, just_this_one, preserve_echo_area)
scroll_conservatively ? pos.vpos + 1 : scroll_step,
w);
+ /* The old bottom-of-screen position is no longer valid. */
+ w->window_end_valid = Qnil;
if (! NILP (Vwindow_scroll_functions))
{
set_marker_both (w->start, Qnil, pos.bufpos, pos.bytepos);
@@ -2316,6 +2320,8 @@ redisplay_window (window, just_this_one, preserve_echo_area)
scroll_conservatively ? -pos.vpos : - scroll_step,
w);
+ /* The old bottom-of-screen position is no longer valid. */
+ w->window_end_valid = Qnil;
if (! NILP (Vwindow_scroll_functions))
{
set_marker_both (w->start, Qnil, pos.bufpos, pos.bytepos);
@@ -2356,6 +2362,9 @@ redisplay_window (window, just_this_one, preserve_echo_area)
if (PT >= pos.bufpos)
{
+ /* The old bottom-of-screen position is no longer valid. */
+ w->window_end_valid = Qnil;
+
if (! NILP (Vwindow_scroll_functions))
{
set_marker_both (w->start, Qnil, pos.bufpos, pos.bytepos);
@@ -2406,6 +2415,9 @@ recenter:
/* Set startp here explicitly in case that helps avoid an infinite loop
in case the window-scroll-functions functions get errors. */
set_marker_both (w->start, Qnil, pos.bufpos, pos.bytepos);
+
+ /* The old bottom-of-screen position is no longer valid. */
+ w->window_end_valid = Qnil;
if (! NILP (Vwindow_scroll_functions))
{
run_hook_with_args_2 (Qwindow_scroll_functions, window,