summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2011-03-29 21:58:13 +0200
committerEli Zaretskii <eliz@gnu.org>2011-03-29 21:58:13 +0200
commit492001e973aa9cbd43f213d12b9ea2717b306b9b (patch)
treee466e2e46e0880ad66b5d05e762d70903ea59349
parent9f3842cef7423e3ce6f75721284e6351f3a200e5 (diff)
downloademacs-492001e973aa9cbd43f213d12b9ea2717b306b9b.tar.gz
Fix off-by-one in scroll down aggressively.
src/xdisp.c (try_scrolling): When scrolling down aggressively, scroll one screen line less, to make sure we end up at the margin for fractions close to 1.
-rw-r--r--src/ChangeLog6
-rw-r--r--src/xdisp.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index cb9096a5a5c..dda98bc73a7 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2011-03-29 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (try_scrolling): When scrolling down aggressively,
+ scroll one screen line less, to make sure we end up at the margin
+ for fractions close to 1.
+
2011-03-28 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (try_scrolling): When point is above the window, allow
diff --git a/src/xdisp.c b/src/xdisp.c
index 871d070ed31..7983c118134 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -13212,7 +13212,8 @@ try_scrolling (Lisp_Object window, int just_this_one_p,
amount_to_scroll = float_amount;
if (amount_to_scroll == 0 && float_amount > 0)
amount_to_scroll = 1;
- amount_to_scroll -= this_scroll_margin - dy;
+ amount_to_scroll -=
+ this_scroll_margin - dy - FRAME_LINE_HEIGHT (f);
/* Don't let point enter the scroll margin near
bottom of the window. */
if (amount_to_scroll > height - 2*this_scroll_margin + dy)