X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/836f8eb0eda25f31b82c07384fc9b1fb60ce7182..b46d49ba:/uip/mhbuildsbr.c?ds=sidebyside diff --git a/uip/mhbuildsbr.c b/uip/mhbuildsbr.c index bb68cc5b..ba96ac44 100644 --- a/uip/mhbuildsbr.c +++ b/uip/mhbuildsbr.c @@ -21,11 +21,13 @@ #include #include #include +#include "h/done.h" #include +#include "h/mhcachesbr.h" #include "mhmisc.h" -#include "../sbr/m_mktemp.h" -#include "../sbr/message_id.h" -#include "../sbr/mime_type.h" +#include "sbr/m_mktemp.h" +#include "sbr/message_id.h" +#include "sbr/mime_type.h" #include "mhfree.h" #include "mhshowsbr.h" @@ -56,9 +58,6 @@ typedef struct convert_list { } convert_list; -/* mhcachesbr.c */ -int find_cache (CT, int, int *, char *, char *, int); - /* * static prototypes */ @@ -447,7 +446,7 @@ finish_field: CT *ctp; convert_list *next; - done = freects_done; + set_done(freects_done); /* In case there are multiple calls that land here, prevent leak. */ for (ctp = cts; ctp && *ctp; ++ctp) { free_content (*ctp); } @@ -1223,7 +1222,7 @@ compose_content (CT ct, int verbose) default: if (!ce->ce_file) { pid_t child_id; - int i, xstdout, len, buflen; + int xstdout, len, buflen; char *bp, *cp; char *vec[4], buffer[BUFSIZ]; FILE *out; @@ -1323,8 +1322,7 @@ raw: if ((out = fopen (ce->ce_file, "w")) == NULL) adios (ce->ce_file, "unable to open for writing"); - for (i = 0; (child_id = fork()) == NOTOK && i > 5; i++) - sleep (5); + child_id = fork(); switch (child_id) { case NOTOK: adios ("fork", "unable to fork"); @@ -1337,7 +1335,7 @@ raw: execvp ("/bin/sh", vec); fprintf (stderr, "unable to exec "); perror ("/bin/sh"); - _exit (-1); + _exit(1); /* NOTREACHED */ default: @@ -1623,7 +1621,7 @@ scan_content (CT ct, size_t maxunencoded) } } - return (boundaryclash ? NOTOK : OK); + return boundaryclash ? NOTOK : OK; } @@ -1747,7 +1745,7 @@ build_headers (CT ct, int header_encoding) np = output_params(len, ct->c_dispo_first, NULL, 0); vp = add(np, vp); vp = add("\n", vp); - mh_xfree(np); + free(np); add_header (ct, mh_xstrdup(DISPO_FIELD), vp); } @@ -2020,7 +2018,7 @@ setup_attach_content(CT ct, char *filename) for (pm = ct->c_ctinfo.ci_first_pm; pm; pm = pm->pm_next) { if (strcasecmp(pm->pm_name, "name") == 0) { - mh_xfree(pm->pm_value); + free(pm->pm_value); pm->pm_value = mh_xstrdup(simplename); break; } @@ -2239,9 +2237,9 @@ expand_pseudoheader (CT ct, CT *text_plain_ct, struct multipart *m, init_decoded_content (reply_ct, infile); if (extract_headers (reply_ct, reply_file, &reply_fp) == NOTOK) { - free (reply_file); inform("failed to extract headers from convert output in %s, " "continuing...", reply_file); + free(reply_file); return; }