]> diplodocus.org Git - nmh/blobdiff - uip/replsbr.c
lock_file.c: close(2) file descriptor on failure, avoiding leak.
[nmh] / uip / replsbr.c
index d3ba2709698c622a718a98dde7a4d414456779cd..b5e10827d3e2f2b7affe6b4a3b8688e57c0657b6 100644 (file)
@@ -161,7 +161,7 @@ finished:
     /* set up the "fcc" pseudo-component */
     cptr = fmt_findcomp ("fcc");
     if (cptr) {
-       mh_xfree(cptr->c_text);
+       free(cptr->c_text);
        if (fcc)
            cptr->c_text = mh_xstrdup(fcc);
        else
@@ -169,7 +169,7 @@ finished:
     }
     cptr = fmt_findcomp ("user");
     if (cptr) {
-       mh_xfree(cptr->c_text);
+       free(cptr->c_text);
        if ((cp = getenv("USER")))
            cptr->c_text = mh_xstrdup(cp);
        else
@@ -205,7 +205,7 @@ finished:
     dat[2] = 0;
     dat[3] = outputlinelen;
     dat[4] = 0;
-    memset(&cb, 0, sizeof(cb));
+    ZERO(&cb);
     cb.formataddr = replformataddr;
     cb.concataddr = replconcataddr;
     fmt_scan (fmt, scanl, i, dat, &cb);
@@ -476,6 +476,7 @@ replfilter (FILE *in, FILE *out, char *filter, int fmtproc)
            if (pidXwait (pid, mhl))
                done (1);
            fseek (out, 0L, SEEK_END);
+            arglist_free(mhl, arglist);
            break;
     }
 }