http://www.perlmonks.org?node_id=197519


in reply to No child processes

If local $SIG{CHLD} is clumsy, why not hide it?
# or whatever name you like, my_system, systemx, # safe_system, sig_system... sub wrapped_system { # Use local signal handler so global handler # does not result in bad values in $? and $! local $SIG{CHLD}=''; return system @_; }
If you run into this problem in more than one place in your code, moving this into a subroutine would make all that much more sense.
--
Mike