JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
applied Jukka's sigchld patch
[dwm.git] / dwm.c
diff --git a/dwm.c b/dwm.c
index 1b30cae..e2f306c 100644 (file)
--- a/dwm.c
+++ b/dwm.c
@@ -1429,7 +1429,6 @@ setup(void) {
        XSetWindowAttributes wa;
 
        /* clean up any zombies immediately */
-       signal(SIGCHLD, sigchld);
        sigchld(0);
 
        /* init screen */
@@ -1501,8 +1500,9 @@ showhide(Client *c) {
 
 void
 sigchld(int unused) {
+       if(signal(SIGCHLD, sigchld) == SIG_ERR)
+               die("Can't install SIGCHLD handler");
        while(0 < waitpid(-1, NULL, WNOHANG));
-       signal(SIGCHLD, sigchld);
 }
 
 void