소스 검색

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.
Christoph Lohmann 12 년 전
부모
커밋
055a4f6d2c
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      st.c

+ 3 - 2
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;