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.
This commit is contained in:
Christoph Lohmann 2012-09-24 11:04:26 +02:00
parent 71fc293de2
commit d68253ec75

5
st.c
View File

@ -953,7 +953,7 @@ treset(void) {
term.tabs[i] = 1; term.tabs[i] = 1;
term.top = 0, term.bot = term.row - 1; term.top = 0, term.bot = term.row - 1;
term.mode = MODE_WRAP; term.mode = MODE_WRAP;
xclear(0, 0, xw.w, xw.h);
tclearregion(0, 0, term.col-1, term.row-1); tclearregion(0, 0, term.col-1, term.row-1);
} }
@ -1728,6 +1728,7 @@ tputc(char *c) {
case 'c': /* RIS -- Reset to inital state */ case 'c': /* RIS -- Reset to inital state */
treset(); treset();
term.esc = 0; term.esc = 0;
xclear(0, 0, xw.w, xw.h);
xresettitle(); xresettitle();
break; break;
case '=': /* DECPAM -- Application keypad */ case '=': /* DECPAM -- Application keypad */
@ -2456,9 +2457,9 @@ main(int argc, char *argv[]) {
run: run:
setlocale(LC_CTYPE, ""); setlocale(LC_CTYPE, "");
xinit();
tnew(80, 24); tnew(80, 24);
ttynew(); ttynew();
xinit();
selinit(); selinit();
run(); run();
return 0; return 0;