more rigorous SIGCHLD guarding

From-SVN: r40522
5 files changed