X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/236a2b64249d7ffe0c4eaea2ef89b86f759ceda6..2194825961eefdab538204e3bb682825a5427e14:/uip/mhshowsbr.c diff --git a/uip/mhshowsbr.c b/uip/mhshowsbr.c index ce8a0e4d..45c73cbe 100644 --- a/uip/mhshowsbr.c +++ b/uip/mhshowsbr.c @@ -466,7 +466,7 @@ show_content_aux2 (CT ct, int alternate, char *cracked, char *buffer, close (fd); execvp (file, vec); fprintf (stderr, "unable to exec "); - perror ("/bin/sh"); + perror (buffer); _exit (-1); /* NOTREACHED */ @@ -508,9 +508,12 @@ show_text (CT ct, int alternate, int concatsw) * if it is not a text part of a multipart/alternative */ if (!alternate || ct->c_subtype == TEXT_PLAIN) { - if (concatsw) - snprintf(buffer, sizeof(buffer), "%%l"); - else + if (concatsw) { + if (ct->c_termproc) + snprintf(buffer, sizeof(buffer), "%%lcat"); + else + snprintf(buffer, sizeof(buffer), "%%l"); + } else snprintf (buffer, sizeof(buffer), "%%l%s %%F", progsw ? progsw : moreproc && *moreproc ? moreproc : DEFAULT_PAGER); cp = (ct->c_showproc = add (buffer, NULL)); @@ -704,7 +707,7 @@ show_message_rfc822 (CT ct, int alternate) /* default method for message/rfc822 */ if (ct->c_subtype == MESSAGE_RFC822) { - cp = (ct->c_showproc = add ("%pecho -file %F", NULL)); + cp = (ct->c_showproc = add ("%pshow -file %F", NULL)); return show_content_aux (ct, alternate, cp, NULL); } @@ -1183,6 +1186,7 @@ iconv_start: advise (NULL, "Can't convert %s to %s without iconv", src_charset, dest_charset); + errno = ENOSYS; status = NOTOK; #endif /* ! HAVE_ICONV */ }