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(-)
This commit is contained in:
Roberto E. Vargas Caballero 2012-09-24 10:26:50 +02:00
parent 61ffa628ff
commit 57e9f03059

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;