mutt_*mktemp--
authorJulien Danjou <julien@danjou.info>
Sat, 25 Nov 2006 17:10:50 +0000 (18:10 +0100)
committerPierre Habouzit <madcoder@debian.org>
Sun, 26 Nov 2006 16:09:24 +0000 (17:09 +0100)
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
attach.c

index 4e6fff1..54bfc73 100644 (file)
--- a/attach.c
+++ b/attach.c
@@ -373,6 +373,7 @@ int mutt_view_attachment (FILE * fp, BODY * a, int flag, HEADER * hdr,
   rfc1524_entry *entry = NULL;
   int rc = -1;
   int unlink_tempfile = 0;
+  int pagerfd = -1;
 
   is_message = mutt_is_message_type (a->type, a->subtype);
   if (is_message && a->hdr && (a->hdr->security & ENCRYPT) &&
@@ -447,23 +448,21 @@ int mutt_view_attachment (FILE * fp, BODY * a, int flag, HEADER * hdr,
     if (fp && !use_mailcap && a->filename) {
       /* recv case */
       m_strcpy(pagerfile, sizeof(pagerfile), a->filename);
-      mutt_adv_mktemp (NULL, pagerfile, sizeof (pagerfile));
+      pagerfd = m_tempfd(pagerfile, sizeof(pagerfile), NONULL(Tempdir), pagerfile);
     } else {
-      mutt_mktemp (pagerfile);
+      pagerfd = m_tempfd(pagerfile, sizeof(pagerfile), NONULL(Tempdir), NULL);
     }
   }
 
   if (use_mailcap) {
     pid_t thepid = 0;
-    int tempfd = -1, pagerfd = -1;
+    int tempfd = -1;
 
     if (!use_pager)
       mutt_endwin (NULL);
 
     if (use_pager || use_pipe) {
-      if (use_pager
-          && ((pagerfd = safe_open (pagerfile, O_CREAT | O_EXCL | O_WRONLY))
-              == -1)) {
+      if (use_pager && pagerfd == -1) {
         mutt_perror ("open");
         goto return_error;
       }