diff -r cf5bb4e72804 -r 31cb815bac41 dwm.c --- a/dwm.c Thu Aug 13 10:45:59 2009 +0100 +++ b/dwm.c Sun Aug 16 08:18:25 2009 +0100 @@ -1429,7 +1429,6 @@ XSetWindowAttributes wa; /* clean up any zombies immediately */ - signal(SIGCHLD, sigchld); sigchld(0); /* init screen */ @@ -1501,8 +1500,9 @@ 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