X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=attach.c;h=d42e47a2f66418730c5caac46ce3929d0c500e1e;hp=f917c1fa6dc0c0f9cfefb3d443ee114b73a33c33;hb=c9f72ab0cd65f517a2047feb942ad85025c1b7e8;hpb=1a79031e2cd056f6f7d95dfaccc58323251521ba diff --git a/attach.c b/attach.c index f917c1f..d42e47a 100644 --- a/attach.c +++ b/attach.c @@ -138,7 +138,7 @@ int mutt_compose_attachment (BODY * a) /* Remove headers by copying out data to another file, then * copying the file back */ fseeko (fp, b->offset, 0); - tfp = m_tempfile(tempfile, sizeof(tempfile), NONULL(Tempdir), NULL); + tfp = m_tempfile(tempfile, sizeof(tempfile), NONULL(MCore.tmpdir), NULL); if (!tfp) { mutt_perror (_("Failure to open file to strip headers.")); goto bailout; @@ -228,7 +228,7 @@ int mutt_edit_attachment (BODY * a) } else if (a->type == TYPETEXT) { /* On text, default to editor */ - mutt_edit_file (NONULL (Editor), a->filename); + mutt_edit_file(a->filename); } else { rfc1524_entry_delete(&entry); mutt_error (_("No mailcap edit entry for %s"), type); @@ -440,7 +440,7 @@ int mutt_view_attachment (FILE * fp, BODY * a, int flag, HEADER * hdr, if (use_pager) { /* recv case */ - pagerfd = m_tempfd(pagerfile, sizeof(pagerfile), NONULL(Tempdir), + pagerfd = m_tempfd(pagerfile, sizeof(pagerfile), NONULL(MCore.tmpdir), fp && !use_mailcap ? a->filename : NULL); } @@ -570,8 +570,7 @@ return_error: } /* returns 1 on success, 0 on error */ -int mutt_pipe_attachment (FILE * fp, BODY * b, const char *path, - int out) +int mutt_pipe_attachment(FILE * fp, BODY * b, const char *path, int out) { pid_t thepid; int rv = 0; @@ -583,7 +582,7 @@ int mutt_pipe_attachment (FILE * fp, BODY * b, const char *path, STATE s; p_clear(&s, 1); - if (out) + if (out >= 0) thepid = mutt_create_filter_fd(path, &s.fpout, NULL, NULL, -1, out, -1); else thepid = mutt_create_filter(path, &s.fpout, NULL, NULL); @@ -597,8 +596,7 @@ int mutt_pipe_attachment (FILE * fp, BODY * b, const char *path, s.fpin = fp; mutt_decode_attachment (b, &s); m_fclose(&s.fpout); - } - else { + } else { /* send case */ FILE *ifp, *ofp; @@ -608,10 +606,10 @@ int mutt_pipe_attachment (FILE * fp, BODY * b, const char *path, return 0; } - if (out) - thepid = mutt_create_filter_fd (path, &ofp, NULL, NULL, -1, out, -1); + if (out >= 0) + thepid = mutt_create_filter_fd(path, &ofp, NULL, NULL, -1, out, -1); else - thepid = mutt_create_filter (path, &ofp, NULL, NULL); + thepid = mutt_create_filter(path, &ofp, NULL, NULL); if (thepid < 0) { mutt_perror (_("Can't create filter")); @@ -629,16 +627,16 @@ int mutt_pipe_attachment (FILE * fp, BODY * b, const char *path, bail: - if (out) - close (out); + if (out >= 0) + close(out); /* * check for error exit from child process */ - if (mutt_wait_filter (thepid) != 0) + if (mutt_wait_filter(thepid) != 0) rv = 0; - if (rv == 0 || option (OPTWAITKEY)) + if (rv == 0 || option(OPTWAITKEY)) mutt_any_key_to_continue (NULL); return rv; } @@ -913,7 +911,7 @@ int mutt_print_attachment (FILE * fp, BODY * a) tok = mime_which_token(type, -1); if (tok == MIME_TEXT_PLAIN || tok == MIME_APPLICATION_POSTSCRIPT) { - return (mutt_pipe_attachment (fp, a, NONULL (PrintCmd), 0)); + return mutt_pipe_attachment(fp, a, NONULL (PrintCmd), -1); } if (mutt_can_decode (a)) { @@ -925,7 +923,7 @@ int mutt_print_attachment (FILE * fp, BODY * a) ifp = NULL; fpout = NULL; - newfile_fd = m_tempfd(newfile, sizeof(newfile), NONULL(Tempdir), NULL); + newfile_fd = m_tempfd(newfile, sizeof(newfile), NONULL(MCore.tmpdir), NULL); if (mutt_decode_save_attachment (fp, a, newfile_fd, M_PRINTING) == 0) { if ((ifp = fopen(newfile, "r")) == NULL) {