diff options
Diffstat (limited to 'st.c')
-rw-r--r-- | st.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -1107,11 +1107,16 @@ kscrollup(const Arg* a) if (n < 0) n = term.row + n; - if (term.scr <= HISTSIZE-n) { + if (term.scr <= term.histi-n) { term.scr += n; selscroll(0, n); tfulldirt(); - } + } else { + n = term.histi - term.scr; + term.scr = term.histi; + selscroll(0, n); + tfulldirt(); + } } void @@ -1779,7 +1784,6 @@ csihandle(void) tclearregion(0, term.c.y+1, term.col-1, term.row-1); } - term.histi=0; break; case 1: /* above */ if (term.c.y > 1) |