From 9c5886e7ee51b9283762a7b5681c19fa3c28fb92 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Fri, 8 Aug 1997 20:09:27 +0000 Subject: [PATCH] (redisplay_window): Fix access to w->last_point{,_[xy]}. --- src/xdisp.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/xdisp.c b/src/xdisp.c index 047fb9a73f3..b2e605b34af 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -1838,23 +1838,25 @@ redisplay_window (window, just_this_one, preserve_echo_area) && current_buffer != XMARKER (Voverlay_arrow_position)->buffer) { int this_scroll_margin = scroll_margin; - int last_point_y = w->last_point_y - XINT (w->top); - int last_point_x = (w->last_point_x + int last_point_y = XFASTINT (w->last_point_y) - XINT (w->top); + int last_point_x = (XFASTINT (w->last_point_x) + (hscroll ? 1 - hscroll : 0) - WINDOW_LEFT_MARGIN (w)); /* Find where PT is located now on the frame. */ /* Check just_this_one as a way of verifying that the window edges have not changed. */ - if (PT == w->last_point && just_this_one) + if (PT == XFASTINT (w->last_point) && just_this_one) { pos.hpos = last_point_x; pos.vpos = last_point_y; pos.bufpos = PT; } - else if (PT > w->last_point && w->last_point > startp && just_this_one) + else if (PT > XFASTINT (w->last_point) + && XFASTINT (w->last_point) > startp && just_this_one) { - pos = *compute_motion (w->last_point, last_point_y, last_point_x, 0, + pos = *compute_motion (XFASTINT (w->last_point), + last_point_y, last_point_x, 0, PT, height, /* BUG FIX: See the comment of Fpos_visible_in_window_p (window.c). */ -- 2.39.2