Clean up process wait to use POSIX waitpid() interface.
[mmh] / uip / mhshowsbr.c
index 3e730ce..38167c8 100644 (file)
 #include <h/mime.h>
 #include <h/mhparse.h>
 #include <h/utils.h>
-
-#ifdef HAVE_SYS_WAIT_H
-# include <sys/wait.h>
-#endif
+#include <sys/wait.h>
 
 /*
 ** Just use sigjmp/longjmp on older machines that
@@ -116,12 +113,7 @@ static void
 show_single_message(CT ct, char *form)
 {
        sigset_t set, oset;
-
-#ifdef HAVE_UNION_WAIT
-       union wait status;
-#else
        int status;
-#endif
 
        /*
        ** Allow user executable bit so that temporary directories created by
@@ -157,11 +149,7 @@ show_single_message(CT ct, char *form)
        SIGPROCMASK(SIG_BLOCK, &set, &oset);
 
        while (wait(&status) != NOTOK) {
-#ifdef HAVE_UNION_WAIT
-               pidcheck(status.w_status);
-#else
                pidcheck(status);
-#endif
                continue;
        }
 
@@ -739,11 +727,7 @@ show_multi_internal(CT ct, int serial, int alternate)
        if (serial && !nowserial) {
                pid_t pid;
                int kids;
-#ifdef HAVE_UNION_WAIT
-               union wait status;
-#else
                int status;
-#endif
 
                kids = 0;
                for (part = m->mp_parts; part; part = part->mp_next) {
@@ -758,11 +742,7 @@ show_multi_internal(CT ct, int serial, int alternate)
                }
 
                while (kids > 0 && (pid = wait(&status)) != NOTOK) {
-#ifdef HAVE_UNION_WAIT
-                       pidcheck(status.w_status);
-#else
                        pidcheck(status);
-#endif
 
                        for (part = m->mp_parts; part; part = part->mp_next) {
                                p = part->mp_part;