X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Frepl.c;h=07ec48c0197532f4c74ffa7580f1dbd80096aa6d;hb=bca1c9b36980c74f4dcc66a2d23e5d09083e0201;hp=4e2c18ae1a9846de80e4bad84bf0bcd4e5e758de;hpb=67411b1f95d6ec987b4c732459e1ba8a8ac192c6;p=mmh diff --git a/uip/repl.c b/uip/repl.c index 4e2c18a..07ec48c 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 @@ -424,7 +424,7 @@ replout(FILE *inb, char *msg, char *drft, struct msgs *mp, umask(mask); /* get new format string */ - cp = new_fs(form, NULL, NULL); + cp = new_fs(form, NULL); format_len = strlen(cp); /* compile format string */ @@ -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); + 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 */ @@ -741,30 +745,22 @@ insert(struct mailname *np) snprintf(buffer, sizeof(buffer), "Reply to %s? ", adrformat(np)); if (!gans(buffer, anoyes)) - return 0; + return 0; } mp->m_next = np; - -#ifdef ISI - if (ismymbox(np)) - ccme = 0; -#endif - return 1; } /* -** 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; + int pid, n; char *errstr; if (filter == NULL) @@ -773,8 +769,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); @@ -785,19 +779,19 @@ replfilter(FILE *in, FILE *out, char *filter) case OK: dup2(fileno(in), fileno(stdin)); dup2(fileno(out), fileno(stdout)); - closefds(3); + for (n=3; n