make sure to not leave zombie processes from Makefile.PL
Rafael Kitover [Fri, 20 Feb 2009 22:39:31 +0000 (22:39 +0000)]
Makefile.PL

index 1f0bbce..f9551f8 100644 (file)
@@ -126,8 +126,14 @@ EOW
           wait();
           alarm 0;
       };
+      my $exception = $@;
+
       my $sig = $? & 127;
-      if ($@ || $sig == POSIX::SIGSEGV() || $sig == POSIX::SIGABRT()
+
+# make sure process actually dies
+      $exception && kill POSIX::SIGKILL(), $pid;
+
+      if ($exception || $sig == POSIX::SIGSEGV() || $sig == POSIX::SIGABRT()
         || $sig == 7) { # 7 == SIGBUS, haven't seen it but just in case
           warn (<<EOE);