summaryrefslogtreecommitdiff
path: root/lib/libcurses/refresh.c
diff options
context:
space:
mode:
authorAndrey A. Chernov <ache@FreeBSD.org>1994-10-27 22:36:56 +0000
committerAndrey A. Chernov <ache@FreeBSD.org>1994-10-27 22:36:56 +0000
commitd8f07fabd5c89c6a810d4d1ba0d93578b63f0c51 (patch)
tree89c05a1989e52e66c74f534f70ddf97999543332 /lib/libcurses/refresh.c
parent54c7241bd31ddd11e8a92f77a69679422843f96e (diff)
Notes
Diffstat (limited to 'lib/libcurses/refresh.c')
-rw-r--r--lib/libcurses/refresh.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/libcurses/refresh.c b/lib/libcurses/refresh.c
index b6d432b9c31a..4cb87a3a760c 100644
--- a/lib/libcurses/refresh.c
+++ b/lib/libcurses/refresh.c
@@ -744,8 +744,8 @@ scrolln(starts, startw, curs, bot, top)
}
if (n > 0) {
- /* Scroll up the block. */
- if (SF != NULL && top == 0) {
+ /* Scroll up the screen. */
+ if ((!DB && SF != NULL || n == 1) && bot == curscr->maxy - 1 && top == 0) {
__mvcur(oy, ox, curscr->maxy - 1, 0, 1);
if (n == 1)
goto f_nl1;
@@ -799,8 +799,8 @@ scrolln(starts, startw, curs, bot, top)
* !!!
* n < 0
*/
- /* Preserve the bottom lines. */
- if (SR != NULL && bot == curscr->maxy - 1) {
+ /* Scroll down the screen. */
+ if (!DA && SR != NULL && bot == curscr->maxy - 1 && top == 0) {
__mvcur(oy, ox, 0, 0, 1);
if (sr != NULL && -n == 1)
goto b_sr1;