XCloseDisplay(3) on re-init_X11()
authorNikos Ntarmos <ntarmos@cs.uoi.gr>
Thu, 28 May 2009 13:45:15 +0000 (16:45 +0300)
committerBrenden Matthews <brenden@rty.ca>
Fri, 29 May 2009 03:27:55 +0000 (21:27 -0600)
Signed-off-by: Nikos Ntarmos <ntarmos@cs.uoi.gr>
Signed-off-by: Brenden Matthews <brenden@rty.ca>

src/x11.c

index e165a4b..b182bd6 100644 (file)
--- a/src/x11.c
+++ b/src/x11.c
@@ -49,7 +49,7 @@ int use_xdbe;
 #endif
 
 /* some basic X11 stuff */
-Display *display;
+Display *display = NULL;
 int display_width;
 int display_height;
 int screen;
@@ -70,6 +70,8 @@ static Window find_subwindow(Window win, int w, int h);
 /* X11 initializer */
 void init_X11(const char *disp)
 {
+       if (display)
+               XCloseDisplay(display);
        if ((display = XOpenDisplay(disp)) == NULL) {
                CRIT_ERR("can't open display: %s", XDisplayName(0));
        }