aboutsummaryrefslogtreecommitdiff
path: root/st.c
diff options
context:
space:
mode:
authorChristoph Lohmann <20h@r-36.net>2012-09-24 11:04:26 +0200
committerChristoph Lohmann <20h@r-36.net>2012-09-24 11:04:26 +0200
commit055a4f6d2cc727cc58509a39e130bdd8dbfa452b (patch)
treec7acbfa804768dddd2579e9d29f78d9708770d90 /st.c
parente9c677816c0161a6702dabb244bd2fd918dcb0af (diff)
downloadst-055a4f6d2cc727cc58509a39e130bdd8dbfa452b.tar.gz
st-055a4f6d2cc727cc58509a39e130bdd8dbfa452b.tar.bz2
The xinit() call needs to be behind all the tty init, otherwise all the
allocated structures are wrong. The xclear() is now done on purpose. Please keep X11 calls out of the way of pure tty-related calls.
Diffstat (limited to 'st.c')
-rw-r--r--st.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/st.c b/st.c
index 9760b6c..2d080e5 100644
--- a/st.c
+++ b/st.c
@@ -953,7 +953,7 @@ treset(void) {
term.tabs[i] = 1;
term.top = 0, term.bot = term.row - 1;
term.mode = MODE_WRAP;
- xclear(0, 0, xw.w, xw.h);
+
tclearregion(0, 0, term.col-1, term.row-1);
}
@@ -1728,6 +1728,7 @@ tputc(char *c) {
case 'c': /* RIS -- Reset to inital state */
treset();
term.esc = 0;
+ xclear(0, 0, xw.w, xw.h);
xresettitle();
break;
case '=': /* DECPAM -- Application keypad */
@@ -2456,9 +2457,9 @@ main(int argc, char *argv[]) {
run:
setlocale(LC_CTYPE, "");
- xinit();
tnew(80, 24);
ttynew();
+ xinit();
selinit();
run();
return 0;