Commit Diff


commit - 6613d9f9a1a5630bab30bc2b70bdc793977073ee
commit + e03248a4d5feaaacb130416be6e467a04de81f78
blob - 7c0f9781d44c2db907f059813fbb826b1125da57
blob + b3c43eeb23a693a4e734a945cdf3aa31a6d51b86
--- dwm.c
+++ dwm.c
@@ -1541,8 +1541,6 @@ 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 */
@@ -1640,6 +1638,8 @@ 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));
 }