
On Sun, Apr 11, 2010 at 09:03:13PM +0200, Tomas Janousek wrote:
Sun Apr 11 20:55:10 CEST 2010 Tomas Janousek
* get rid of zombies in a more portable way FreeBSD and OpenBSD don't support the signal(SIGCHLD, SIG_IGN) way of dealing with them. Wikipedia quote on the issue:
"POSIX.1-2001 allows a parent process to elect for the kernel to automatically reap child processes that terminate by setting the disposition of SIGCHLD to SIG_IGN or by setting the SA_NOCLDWAIT flag for the SIGCHLD signal; Linux 2.6 kernels adhere to this behavior while FreeBSD supports only the latter of these methods. Because of historical differences between System V and BSD behaviors with regard to ignoring SIGCHLD, calling wait remains the most portable paradigm for cleaning up after forked child processes."
I confirm that I was afflicted with this issue, and this patch fixed it for me. Thanks!