X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fmhshowsbr.c;h=38167c8fdca91ddb489c52bc8d05a1cf7f01f2d5;hp=fe9a6269e3cb40a8c19cf6f587f34fc9ab753a9a;hb=0c648c7c1509760370d4c4267a45a5a305885e7f;hpb=5fbf37ee68e018998ada61eeab73e035b26834b6 diff --git a/uip/mhshowsbr.c b/uip/mhshowsbr.c index fe9a626..38167c8 100644 --- a/uip/mhshowsbr.c +++ b/uip/mhshowsbr.c @@ -17,10 +17,7 @@ #include #include #include - -#ifdef HAVE_SYS_WAIT_H -# include -#endif +#include /* ** Just use sigjmp/longjmp on older machines that @@ -36,12 +33,7 @@ extern int debugsw; int serialsw = 0; int nolist = 0; - -char *progsw = NULL; - -/* flags for moreproc/header display */ char *formsw = NULL; - pid_t xpid = 0; @@ -121,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 @@ -162,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; } @@ -179,9 +162,8 @@ show_single_message(CT ct, char *form) /* -** Use the mhlproc to show the header fields +** Use mhl to show the header fields */ - static void DisplayMsgHeader(CT ct, char *form) { @@ -190,17 +172,11 @@ DisplayMsgHeader(CT ct, char *form) char *vec[8]; vecp = 0; - vec[vecp++] = mhbasename(mhlproc); + vec[vecp++] = "mhl"; vec[vecp++] = "-form"; vec[vecp++] = form; vec[vecp++] = "-nobody"; vec[vecp++] = ct->c_file; - - /* If we've specified -moreproc, then just pass that along. */ - if (progsw) { - vec[vecp++] = "-moreproc"; - vec[vecp++] = progsw; - } vec[vecp] = NULL; fflush(stdout); @@ -211,9 +187,9 @@ DisplayMsgHeader(CT ct, char *form) /* NOTREACHED */ case OK: - execvp(mhlproc, vec); + execvp("mhl", vec); fprintf(stderr, "unable to exec "); - perror(mhlproc); + perror("mhl"); _exit(-1); /* NOTREACHED */ @@ -615,8 +591,7 @@ show_text(CT ct, int serial, int alternate) ** if it is not a text part of a multipart/alternative */ if (!alternate || ct->c_subtype == TEXT_PLAIN) { - snprintf(buffer, sizeof(buffer), "%%p%s '%%F'", - progsw ? progsw : moreproc); + snprintf(buffer, sizeof(buffer), "%%p%s '%%F'", defaultpager); cp = (ct->c_showproc = getcpy(buffer)); return show_content_aux(ct, serial, alternate, cp, NULL); } @@ -713,7 +688,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); @@ -752,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) { @@ -771,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;