removed XINERAMA from config.mk and fixed a segfault when st is
authorAurélien Aptel <aurelien.aptel@gmail.com>
Fri, 27 Aug 2010 11:53:27 +0000 (13:53 +0200)
committerAurélien Aptel <aurelien.aptel@gmail.com>
Fri, 27 Aug 2010 11:53:27 +0000 (13:53 +0200)
started without a display. (thx Hiltjo Posthuma)

config.mk
st.c

index 62eb48f..2827e98 100644 (file)
--- a/config.mk
+++ b/config.mk
@@ -10,16 +10,12 @@ MANPREFIX = ${PREFIX}/share/man
 X11INC = /usr/X11R6/include
 X11LIB = /usr/X11R6/lib
 
-# Xinerama, comment if you don't want it
-#XINERAMALIBS = -L${X11LIB} -lXinerama
-#XINERAMAFLAGS = -DXINERAMA
-
 # includes and libs
 INCS = -I. -I/usr/include -I${X11INC}
-LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS}
+LIBS = -L/usr/lib -lc -L${X11LIB} -lX11
 
 # flags
-CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
+CPPFLAGS = -DVERSION=\"${VERSION}\"
 CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
 LDFLAGS = -s ${LIBS}
 
diff --git a/st.c b/st.c
index 8dfd4a7..623ca29 100644 (file)
--- a/st.c
+++ b/st.c
@@ -1078,10 +1078,9 @@ xhints(void)
 
 void
 xinit(void) {
-       xw.dis = XOpenDisplay(NULL);
-       xw.scr = XDefaultScreen(xw.dis);
-       if(!xw.dis)
+       if(!(xw.dis = XOpenDisplay(NULL)))
                die("Can't open display\n");
+       xw.scr = XDefaultScreen(xw.dis);
        
        /* font */
        if(!(dc.font = XLoadQueryFont(xw.dis, FONT)) || !(dc.bfont = XLoadQueryFont(xw.dis, BOLDFONT)))