aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerd Moellmann2000-10-17 19:32:44 +0000
committerGerd Moellmann2000-10-17 19:32:44 +0000
commit68c5d1db4a686dcd6d50ba98f46b19edd48cb48a (patch)
tree49e0b215ddf0b7d18271290f1226b5b81f700a4e
parent9a0388816118bd7b4ae764fe1c1daa1bab762b5a (diff)
downloademacs-68c5d1db4a686dcd6d50ba98f46b19edd48cb48a.tar.gz
emacs-68c5d1db4a686dcd6d50ba98f46b19edd48cb48a.zip
(try_cursor_movement): Use cursor_row_p also when
PT has moved backward.
-rw-r--r--src/ChangeLog3
-rw-r--r--src/xdisp.c10
2 files changed, 8 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 4c8271bc7cb..06cc70af5c9 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,8 @@
12000-10-17 Gerd Moellmann <gerd@gnu.org> 12000-10-17 Gerd Moellmann <gerd@gnu.org>
2 2
3 * xdisp.c (try_cursor_movement): Use cursor_row_p also when
4 PT has moved backward.
5
3 * xdisp.c (cursor_row_p): Take continued lines into account. 6 * xdisp.c (cursor_row_p): Take continued lines into account.
4 7
5 * alloc.c (mark_object) [GC_CHECK_STRING_BYTES]: Check validity of 8 * alloc.c (mark_object) [GC_CHECK_STRING_BYTES]: Check validity of
diff --git a/src/xdisp.c b/src/xdisp.c
index bc6a7ebd714..12574dd5d07 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -8958,12 +8958,12 @@ try_cursor_movement (window, startp, scroll_step)
8958 if (rc == 0) 8958 if (rc == 0)
8959 { 8959 {
8960 int scroll_p = 0; 8960 int scroll_p = 0;
8961 int last_y = window_text_bottom_y (w) - this_scroll_margin;
8962
8961 8963
8962 if (PT > XFASTINT (w->last_point)) 8964 if (PT > XFASTINT (w->last_point))
8963 { 8965 {
8964 /* Point has moved forward. */ 8966 /* Point has moved forward. */
8965 int last_y = window_text_bottom_y (w) - this_scroll_margin;
8966
8967 while (MATRIX_ROW_END_CHARPOS (row) < PT 8967 while (MATRIX_ROW_END_CHARPOS (row) < PT
8968 && MATRIX_ROW_BOTTOM_Y (row) < last_y) 8968 && MATRIX_ROW_BOTTOM_Y (row) < last_y)
8969 { 8969 {
@@ -9024,9 +9024,9 @@ try_cursor_movement (window, startp, scroll_step)
9024 9024
9025 /* Due to newlines in overlay strings, we may have to 9025 /* Due to newlines in overlay strings, we may have to
9026 skip forward over overlay strings. */ 9026 skip forward over overlay strings. */
9027 while (MATRIX_ROW_END_CHARPOS (row) == PT 9027 while (MATRIX_ROW_BOTTOM_Y (row) < last_y
9028 && MATRIX_ROW_ENDS_IN_OVERLAY_STRING_P (row) 9028 && MATRIX_ROW_END_CHARPOS (row) == PT
9029 && !row->ends_at_zv_p) 9029 && !cursor_row_p (w, row))
9030 ++row; 9030 ++row;
9031 9031
9032 /* If within the scroll margin, scroll. */ 9032 /* If within the scroll margin, scroll. */