X-Git-Url: https://git.xinqibao.xyz/st.git/blobdiff_plain/3afdb4ff04b45a5e4209a56d5073341c9d506b38..16ac85bf5422a7e925743f6134572d3ac1a25188:/st.c diff --git a/st.c b/st.c index d188b35..60243a7 100644 --- a/st.c +++ b/st.c @@ -1398,9 +1398,8 @@ tscrolldown(int orig, int n) { LIMIT(n, 0, term.bot-orig+1); - tclearregion(0, term.bot-n+1, term.col-1, term.bot); tsetdirt(orig, term.bot-n); - tsetdirt(orig+n, term.bot); + tclearregion(0, term.bot-n+1, term.col-1, term.bot); for(i = term.bot; i >= orig+n; i--) { temp = term.line[i]; @@ -1415,16 +1414,16 @@ void tscrollup(int orig, int n) { int i; Line temp; + LIMIT(n, 0, term.bot-orig+1); tclearregion(0, orig, term.col-1, orig+n-1); - tsetdirt(orig, term.bot-n); tsetdirt(orig+n, term.bot); for(i = orig; i <= term.bot-n; i++) { - temp = term.line[i]; - term.line[i] = term.line[i+n]; - term.line[i+n] = temp; + temp = term.line[i]; + term.line[i] = term.line[i+n]; + term.line[i+n] = temp; } selscroll(orig, -n);