Commit Diff


commit - 9bffa845faa181fb3afe05f3dc86ad79c80736be
commit + 6613d9f9a1a5630bab30bc2b70bdc793977073ee
blob - b3c43eeb23a693a4e734a945cdf3aa31a6d51b86
blob + 7c0f9781d44c2db907f059813fbb826b1125da57
--- dwm.c
+++ dwm.c
@@ -1541,6 +1541,8 @@ setup(void)
 	Atom utf8string;
 
 	/* clean up any zombies immediately */
+	if (signal(SIGCHLD, sigchld) == SIG_ERR)
+		die("can't install SIGCHLD handler:");
 	sigchld(0);
 
 	/* init screen */
@@ -1638,8 +1640,6 @@ 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));
 }