X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Frepl.c;h=be4eb402262cf2626dc7253ba300d8a509afeef4;hb=aed384169af5204b8002d06e7a22f89197963d2d;hp=1a0e1430d881b0ea59eaf9d59446ab85d060b384;hpb=88a0787554de9c618e657c31940e734178a25730;p=mmh diff --git a/uip/repl.c b/uip/repl.c index 1a0e143..be4eb40 100644 --- a/uip/repl.c +++ b/uip/repl.c @@ -149,12 +149,12 @@ main(int argc, char **argv) struct msgs *mp = NULL; FILE *in; - filter = getcpy(etcpath(mhlreply)); - #ifdef MHE int buildsw = 0; #endif /* MHE */ + filter = getcpy(etcpath(mhlreply)); + #ifdef LOCALE setlocale(LC_ALL, ""); #endif @@ -594,9 +594,13 @@ finished: /* add an attachment header */ char buffer[BUFSIZ]; - snprintf(buffer, sizeof buffer, "+%s %s", - mp->foldpath, m_name(mp->lowsel)); - annotate(drft, attach_hdr, buffer, 0, -2, 1, 0); + snprintf(buffer, sizeof buffer, "anno -append -nodate '%s' " + "-comp '%s' -text '+%s %s'", + drft, + attach_hdr, mp->foldpath, m_name(mp->lowsel)); + if (system(buffer) != 0) { + advise(NULL, "unable to add attachment header"); + } } /* return dynamically allocated buffers */ @@ -755,16 +759,14 @@ insert(struct mailname *np) /* -** Call the mhlproc +** Call mhl ** ** This function expects that argument out has been fflushed by the caller. */ - static void replfilter(FILE *in, FILE *out, char *filter) { int pid; - char *mhl; char *errstr; if (filter == NULL) @@ -773,8 +775,6 @@ replfilter(FILE *in, FILE *out, char *filter) if (access(filter, R_OK) == NOTOK) adios(filter, "unable to read"); - mhl = mhbasename(mhlproc); - rewind(in); lseek(fileno(in), (off_t) 0, SEEK_SET); @@ -787,17 +787,15 @@ replfilter(FILE *in, FILE *out, char *filter) dup2(fileno(out), fileno(stdout)); closefds(3); - execlp(mhlproc, mhl, "-form", filter, NULL); + execlp("mhl", "mhl", "-form", filter, NULL); errstr = strerror(errno); - write(2, "unable to exec ", 15); - write(2, mhlproc, strlen(mhlproc)); - write(2, ": ", 2); + write(2, "unable to exec mhl: ", 20); write(2, errstr, strlen(errstr)); write(2, "\n", 1); _exit(-1); default: - if (pidXwait(pid, mhl)) + if (pidXwait(pid, "mhl")) done(1); fseek(out, 0L, SEEK_END); break;