Prevent resizing stdin
authorEon S. Jeon <esjeon@hyunmu.am>
Tue, 17 Dec 2013 17:45:38 +0000 (12:45 -0500)
committerRoberto E. Vargas Caballero <k0ga@shike2.com>
Wed, 18 Dec 2013 07:11:22 +0000 (08:11 +0100)
This fixes a bug that the parent tty gets resized whenever you launch
st through command line.

The problem was that ioctl was resizing cmdfd before it gets
initialized in ttynew. Since cmdfd is a global variable, its initial
value is 0, and consequently stdin was being resized.

st.c

diff --git a/st.c b/st.c
index f883ac1..4fb3311 100644 (file)
--- a/st.c
+++ b/st.c
@@ -3667,11 +3667,11 @@ run(void) {
                }
        }
 
+       ttynew();
        if(!xw.isfixed)
                cresize(w, h);
        else
                cresize(xw.fw, xw.fh);
-       ttynew();
 
        gettimeofday(&lastblink, NULL);
        gettimeofday(&last, NULL);