Avoid an obscure build failure, prefer waitpid over wait.
authorJim Meyering <jim@meyering.net>
Sat, 17 Mar 2007 09:43:04 +0000 (10:43 +0100)
committerJim Meyering <jim@meyering.net>
Sat, 17 Mar 2007 09:43:04 +0000 (10:43 +0100)
* src/install.c (strip): Use waitpid, not wait.  It's equivalent,
but feels less obsolescent.

ChangeLog
src/install.c

index a8d6ba3..5bb7f96 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2007-03-17  Jim Meyering  <jim@meyering.net>
 
+       Avoid an obscure build failure, prefer waitpid over wait.
+       * src/install.c (strip): Use waitpid, not wait.  It's equivalent,
+       but feels less obsolescent.
+
        * bootstrap: Don't use \> in grep regexp.  For HP-UX.
 
 2007-03-16  Jim Meyering  <jim@meyering.net>
index 8fc6a8a..0457751 100644 (file)
@@ -566,11 +566,10 @@ strip (char const *name)
       error (EXIT_FAILURE, errno, _("cannot run strip"));
       break;
     default:                   /* Parent. */
-      /* Parent process. */
-      while (pid != wait (&status))    /* Wait for kid to finish. */
-       /* Do nothing. */ ;
-      if (status)
-       error (EXIT_FAILURE, 0, _("strip failed"));
+      if (waitpid (pid, &status, 0) < 0)
+       error (EXIT_FAILURE, errno, _("waiting for strip"));
+      else if (! WIFEXITED (status) || WEXITSTATUS (status))
+       error (EXIT_FAILURE, 0, _("strip process terminated abnormally"));
       break;
     }
 }