]> diplodocus.org Git - nmh/blobdiff - uip/mhlsbr.c
Reworked attach to add charset to Content-Type string for
[nmh] / uip / mhlsbr.c
index a0cd1291d677cb39717f3ee9cdc92ca13d89d902..6a1c3db7878ef0e2121c1bc25c8c30fda167e073 100644 (file)
@@ -14,9 +14,6 @@
 #include <h/tws.h>
 #include <h/utils.h>
 #include <setjmp.h>
-#include <signal.h>
-#include <errno.h>
-#include <sys/wait.h>
 #include <sys/types.h>
 
 /*
@@ -481,7 +478,7 @@ mhl (int argc, char **argv)
        folder = getenv ("mhfolder");
 
     if (isatty (fileno (stdout))) {
-       if (!nomore && !sc_hardcopy() && moreproc && *moreproc != '\0') {
+       if (!nomore && moreproc && *moreproc != '\0') {
            if (mhl_action) {
                SIGNAL (SIGINT, SIG_IGN);
                SIGNAL2 (SIGQUIT, quitser);
@@ -534,7 +531,7 @@ mhl (int argc, char **argv)
     }
     
     if (clearflg > 0 && ontty == NOTTY)
-       clear_screen ();
+       nmh_clear_screen ();
 
     if (ontty == PITTY)
        m_pclose ();
@@ -880,6 +877,8 @@ process (char *folder, char *fname, int ofilen, int ofilec)
     struct mcomp *c1;
     struct stat st;
     struct arglist *ap;
+    /* volatile to prevent "might be clobbered" warning from gcc: */
+    char *volatile fname2 = fname ? fname : "(stdin)";
 
     switch (setjmp (env)) {
        case OK: 
@@ -891,7 +890,6 @@ process (char *folder, char *fname, int ofilen, int ofilec)
                    return;
                }
            } else {
-               fname = "(stdin)";
                fp = stdin;
            }
            if (fstat(fileno(fp), &st) == 0) {
@@ -899,7 +897,7 @@ process (char *folder, char *fname, int ofilen, int ofilec)
            } else {
                filesize = 0;
            }
-           cp = folder ? concat (folder, ":", fname, NULL) : getcpy (fname);
+           cp = folder ? concat (folder, ":", fname2, NULL) : getcpy (fname2);
            if (ontty != PITTY)
                SIGNAL (SIGINT, intrser);
            mhlfile (fp, cp, ofilen, ofilec);  /* FALL THROUGH! */
@@ -958,7 +956,7 @@ mhlfile (FILE *fp, char *mname, int ofilen, int ofilec)
                if (ofilec > 1) {
                    if (ofilen > 1) {
                        if ((global.c_flags & CLEARSCR))
-                           clear_screen ();
+                           nmh_clear_screen ();
                        else
                            printf ("\n\n\n");
                    }
@@ -980,7 +978,7 @@ mhlfile (FILE *fp, char *mname, int ofilen, int ofilec)
                }
                if (strchr(buf, '\n')) {
                    if ((global.c_flags & CLEARSCR))
-                       clear_screen ();
+                       nmh_clear_screen ();
                }
                else
                    printf ("\n");
@@ -991,7 +989,7 @@ mhlfile (FILE *fp, char *mname, int ofilen, int ofilec)
                    if (ofilen > 1) {
                        printf ("\n\n\n");
                        if (clearflg > 0)
-                           clear_screen ();
+                           nmh_clear_screen ();
                    }
                    printf (">>> %s\n\n", mname);
                }
@@ -1182,7 +1180,7 @@ mcomp_format (struct mcomp *c1, struct mcomp *c2)
        if ((p = (struct pqpair *) calloc ((size_t) 1, sizeof(*p))) == NULL)
            adios (NULL, "unable to allocate pqpair memory");
 
-       if ((mp = getm (cp, NULL, 0, AD_NAME, error)) == NULL) {
+       if ((mp = getm (cp, NULL, 0, error, sizeof(error))) == NULL) {
            p->pq_text = getcpy (cp);
            p->pq_error = getcpy (error);
        } else {
@@ -1487,7 +1485,7 @@ putch (char ch, long flags)
            read (fileno (stdout), buf, sizeof(buf));
            if (strchr(buf, '\n')) {
                if (global.c_flags & CLEARSCR)
-                   clear_screen ();
+                   nmh_clear_screen ();
                row = 0;
            } else {
                putchar ('\n');
@@ -1854,7 +1852,6 @@ filterbody (struct mcomp *c1, char *buf, int bufsz, int state, FILE *fp,
         * buffers that we have duplicated from the parent.
         */
        _exit(0);
-       break;
     case -1:
        adios(NULL, "Unable to fork for filter writer process");
        break;