Updated signal stuff
Sebastian Riedel [Mon, 17 Oct 2005 12:39:59 +0000 (12:39 +0000)]
lib/Catalyst/Engine/HTTP.pm

index 6e8e432..214877d 100644 (file)
@@ -115,6 +115,7 @@ sub run {
     local $GOT_HUP = 0;
 
     local $SIG{HUP} = sub { $GOT_HUP = 1; };
+    local $SIG{CHLD} = 'IGNORE';
 
     # Setup restarter
     my $restarter;
@@ -242,7 +243,10 @@ sub run {
     }
     close HTTPDaemon;
 
-    exec {$0}( ( ( -x $0 ) ? () : ($^X) ), $0, @ARGV ) if $GOT_HUP;
+    if ($GOT_HUP) {
+        $SIG{CHLD} = 'DEFAULT';
+        exec {$0}( ( ( -x $0 ) ? () : ($^X) ), $0, @ARGV );
+    }
 }
 
 sub _compare_index {