# HG changeset patch # User Richard M. Stallman # Date 1104807621 0 # Node ID 132e8f3a36a127e7fc64a10af57b56f01e2028dd # Parent 6ce9207392bc7b4fef49fc21aaf065a127516272 (window_scroll_pixel_based): Don't correct preserve_y for CURRENT_HEADER_LINE_HEIGHT when moving backwards. diff -r 6ce9207392bc -r 132e8f3a36a1 src/window.c --- a/src/window.c Tue Jan 04 02:27:16 2005 +0000 +++ b/src/window.c Tue Jan 04 03:00:21 2005 +0000 @@ -4688,7 +4688,8 @@ ; else if (preserve_y >= 0) { - /* If we have a header line, take account of it. */ + /* If we have a header line, take account of it. + This is necessary because we set it.current_y to 0, above. */ if (WINDOW_WANTS_HEADER_LINE_P (w)) preserve_y -= CURRENT_HEADER_LINE_HEIGHT (w); @@ -4728,9 +4729,14 @@ { SET_TEXT_POS_FROM_MARKER (start, w->start); start_display (&it, w, start); +#if 0 /* It's wrong to subtract this here + because we called start_display again + and did not alter it.current_y this time. */ + /* If we have a header line, take account of it. */ if (WINDOW_WANTS_HEADER_LINE_P (w)) preserve_y -= CURRENT_HEADER_LINE_HEIGHT (w); +#endif move_it_to (&it, -1, -1, preserve_y, -1, MOVE_TO_Y); SET_PT_BOTH (IT_CHARPOS (it), IT_BYTEPOS (it));