> Here's where the bug is: > > if ($detach) { > open STDIN, '/dev/null' or die "/dev/null: $!"; > open STDOUT, '>/dev/null' or die "/dev/null: $!"; > open STDERR, '>&STDOUT' or die "open(stderr): $!"; > defined (my $pid = fork) or die "fork: $!"; > exit 0 if $pid; > POSIX::setsid or die "setsid: $!"; > } > > That should be: > > if ($detach) { > open STDIN, '/dev/null' or die "/dev/null: $!"; > open STDOUT, '>/dev/null' or die "/dev/null: $!"; > open STDERR, '>&STDOUT' or die "open(stderr): $!"; > defined (my $pid = fork) or die "fork: $!"; > exit 0 if $pid; > } > POSIX::setsid or die "setsid: $!"; >
That's not actually a patch. :) Applied to my tree as c9045aa751c245ae8f85213b5e705c021928025b