Clear X window in tsetreset()

tsetreset() is called when it is necessary a full initialization of the
terminal, so it also should clean the full X window and not only the
terminal content. It is necessary change the order of the
initialization in main(), and put xinit before of tnew(), because tnew()
calls to tsetreset(), and  this can cause a call to xreset() with
incorrect values.
---
 st.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
dev
Roberto E. Vargas Caballero 2012-09-24 10:26:50 +02:00
parent 21a0c4a2e0
commit b6cfff1625
1 changed files with 2 additions and 1 deletions

3
st.c
View File

@ -952,6 +952,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);
} }
@ -2433,9 +2434,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;