From b6cfff16254bb9014f27ff4c5c9e49953ee91735 Mon Sep 17 00:00:00 2001 From: "Roberto E. Vargas Caballero" Date: Mon, 24 Sep 2012 10:26:50 +0200 Subject: [PATCH] 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(-) --- st.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/st.c b/st.c index 3c158c0..4c8d67f 100644 --- a/st.c +++ b/st.c @@ -952,6 +952,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); } @@ -2433,9 +2434,9 @@ main(int argc, char *argv[]) { run: setlocale(LC_CTYPE, ""); + xinit(); tnew(80, 24); ttynew(); - xinit(); selinit(); run(); return 0;