chiark / gitweb /
prefork-interp: fixes
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 19 Aug 2022 23:34:31 +0000 (00:34 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 21 Aug 2022 20:21:10 +0000 (21:21 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
perl/Prefork.pm

index 2176653842a4d72d9546f5ccd044a8ae79185491..466b2a9cee50b537ca6cec35d1b6788cf573f0c1 100644 (file)
@@ -221,7 +221,7 @@ sub initialisation_complete {
     if (%children) {
       my $full = %children >= $num_servers;
       my $got = waitpid -1, ($full ? 0 : WNOHANG);
-      $got >= 0 or fail_log("failed to wait for monitor(s)");
+      $got >= 0 or fail_log("failed to wait for monitor(s): $!");
       if ($got) {
        if ($?) {
          syslog(LOG_WARNING,
@@ -256,7 +256,7 @@ sub initialisation_complete {
     if ($r > 0) {
       chomp $msgbuf;
       fail_log("watcher: $msgbuf");
-    } elsif ($r == 0) {
+    } elsif (defined $r) {
       last;
     } elsif ($! == EINTR || $! == EAGAIN || $! == EWOULDBLOCK) {
     } else {