Remove #ifdef around use of sigsetjmp().
[mmh] / uip / mhshowsbr.c
index 9f69c54..217e890 100644 (file)
 #include <h/mime.h>
 #include <h/mhparse.h>
 #include <h/utils.h>
-
-#ifdef HAVE_SYS_WAIT_H
-# include <sys/wait.h>
-#endif
-
-/*
-** Just use sigjmp/longjmp on older machines that
-** don't have sigsetjmp/siglongjmp.
-*/
-#ifndef HAVE_SIGSETJMP
-# define sigjmp_buf jmp_buf
-# define sigsetjmp(env,mask) setjmp(env)
-# define siglongjmp(env,val) longjmp(env,val)
-#endif
+#include <sys/wait.h>
 
 extern int debugsw;
 
@@ -116,12 +103,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 +139,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;
        }
 
@@ -700,7 +678,7 @@ show_multi_internal(CT ct, int serial, int alternate)
        for (part = m->mp_parts; part; part = part->mp_next) {
                p = part->mp_part;
 
-               if (part_ok(p, 0) && type_ok(p, 0)) {
+               if (part_ok(p, 1) && type_ok(p, 1)) {
                        int inneresult;
 
                        inneresult = show_switch(p, nowserial, nowalternate);
@@ -739,11 +717,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 +732,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;