X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/71458b3b2492943349f7693a46792756d5013c69..803f25412:/uip/forw.c diff --git a/uip/forw.c b/uip/forw.c index 9eeb6123..12a323bb 100644 --- a/uip/forw.c +++ b/uip/forw.c @@ -116,14 +116,9 @@ main (int argc, char **argv) char **argp, **arguments; struct stat st; struct msgs_array msgs = { 0, 0, NULL }; - int buildsw = 0; - setlocale(LC_ALL, ""); - invo_name = r1bindex (argv[0], '/'); - - /* read user profile/context */ - context_read(); + if (nmh_init(argv[0], 1)) { return 1; } arguments = getarguments (invo_name, argc, argv, 1); argp = arguments; @@ -514,7 +509,6 @@ mhl_draft (int out, char *digest, int volume, int issue, dup2 (pd[1], 1); close (pd[1]); - i = 1; app_msgarg(&vec, "-forwall"); app_msgarg(&vec, "-form"); app_msgarg(&vec, filter); @@ -604,7 +598,9 @@ copy_draft (int out, char *digest, char *file, int volume, int issue, int dashst strncpy (bp, "\n\n", buflen); } - write (out, buffer, strlen (buffer)); + if (write (out, buffer, strlen (buffer)) < 0) { + advise (drft, "write"); + } if ((fd = open (msgnam = m_name (msgnum), O_RDONLY)) == NOTOK) { admonish (msgnam, "unable to read message"); @@ -631,7 +627,9 @@ copy_draft (int out, char *digest, char *file, int volume, int issue, int dashst snprintf (buffer, sizeof(buffer), "\n------- End of Forwarded Message%s\n", mp->numsel > 1 ? "s" : ""); } - write (out, buffer, strlen (buffer)); + if (write (out, buffer, strlen (buffer)) < 0) { + advise (drft, "write"); + } if (digest) { snprintf (buffer, sizeof(buffer), "End of %s Digest [Volume %d Issue %d]\n", @@ -641,7 +639,9 @@ copy_draft (int out, char *digest, char *file, int volume, int issue, int dashst *bp++ = '*'; *bp++ = '\n'; *bp = 0; - write (out, buffer, strlen (buffer)); + if (write (out, buffer, strlen (buffer)) < 0) { + advise (drft, "write"); + } } } @@ -658,11 +658,17 @@ copy_mime_draft (int out) snprintf (buffer, sizeof(buffer), "#forw [forwarded message%s] +%s", mp->numsel == 1 ? "" : "s", mp->foldpath); - write (out, buffer, strlen (buffer)); + if (write (out, buffer, strlen (buffer)) < 0) { + advise (drft, "write"); + } for (msgnum = mp->lowsel; msgnum <= mp->hghsel; msgnum++) if (is_selected (mp, msgnum)) { snprintf (buffer, sizeof(buffer), " %s", m_name (msgnum)); - write (out, buffer, strlen (buffer)); + if (write (out, buffer, strlen (buffer)) < 0) { + advise (drft, "write"); + } } - write (out, "\n", 1); + if (write (out, "\n", 1) < 0) { + advise (drft, "write newline"); + } }