Use m_tempfile and better errors msg
[apps/madmutt.git] / recvattach.c
index c2fec5e..74a59fa 100644 (file)
@@ -8,10 +8,6 @@
  * please see the file GPL in the top level source directory.
  */
 
-#if HAVE_CONFIG_H
-# include "config.h"
-#endif
-
 #include <lib-lib/lib-lib.h>
 
 #include <lib-mime/mime.h>
 #include <lib-ui/curses.h>
 #include <lib-ui/enter.h>
 #include <lib-ui/menu.h>
+#include <lib-mx/mx.h>
+
+#include <lib-sys/unix.h>
 
 #include "mutt.h"
 #include "handler.h"
 #include "recvattach.h"
 #include "attach.h"
-#include "mx.h"
 #include "copy.h"
 #include <lib-crypt/crypt.h>
 
 
-#include <ctype.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/wait.h>
-#include <sys/stat.h>
-#include <string.h>
-#include <errno.h>
-
 static const char *Mailbox_is_read_only = N_("Mailbox is read-only.");
 static char LastSaveFolder[_POSIX_PATH_MAX] = "";
 
@@ -515,14 +505,14 @@ void mutt_save_attachment_list (FILE * fp, int tag, BODY * top, HEADER * hdr,
           rc = mutt_save_attachment (fp, top, tfile, append, hdr);
           if (rc == 0 && AttachSep && (fpout = fopen (tfile, "a")) != NULL) {
             fprintf (fpout, "%s", AttachSep);
-            fclose (fpout);
+            m_fclose(&fpout);
           }
         }
         else {
           rc = mutt_save_attachment (fp, top, tfile, M_SAVE_APPEND, hdr);
           if (rc == 0 && AttachSep && (fpout = fopen (tfile, "a")) != NULL) {
             fprintf (fpout, "%s", AttachSep);
-            fclose (fpout);
+            m_fclose(&fpout);
           }
         }
       }
@@ -607,7 +597,7 @@ static void pipe_attachment (FILE * fp, BODY * b, STATE * state)
       return;
     }
     mutt_copy_stream (ifp, state->fpout);
-    fclose (ifp);
+    m_fclose(&ifp);
     if (AttachSep)
       state_puts (AttachSep, state);
   }
@@ -653,7 +643,7 @@ void mutt_pipe_attachment_list (FILE * fp, int tag, BODY * top, int afilter)
     mutt_endwin (NULL);
     thepid = mutt_create_filter (buf, &state.fpout, NULL, NULL);
     pipe_attachment_list (buf, fp, tag, top, afilter, &state);
-    fclose (state.fpout);
+    m_fclose(&state.fpout);
     if (mutt_wait_filter (thepid) != 0 || option (OPTWAITKEY))
       mutt_any_key_to_continue (NULL);
   }
@@ -711,7 +701,7 @@ static void print_attachment_list (FILE * fp, int tag, BODY * top,
               0) {
             if ((ifp = fopen (newfile, "r")) != NULL) {
               mutt_copy_stream (ifp, state->fpout);
-              fclose (ifp);
+              m_fclose(&ifp);
               if (AttachSep)
                 state_puts (AttachSep, state);
             }
@@ -748,7 +738,7 @@ void mutt_print_attachment_list (FILE * fp, int tag, BODY * top)
     p_clear(&state, 1);
     thepid = mutt_create_filter (NONULL (PrintCmd), &state.fpout, NULL, NULL);
     print_attachment_list (fp, tag, top, &state);
-    fclose (state.fpout);
+    m_fclose(&state.fpout);
     if (mutt_wait_filter (thepid) != 0 || option (OPTWAITKEY))
       mutt_any_key_to_continue (NULL);
   }
@@ -948,7 +938,7 @@ void mutt_view_attachments (HEADER * hdr)
           secured = !crypt_smime_decrypt_mime (_fp, &fp, _cur, &cur);
 
           body_list_wipe(&_cur);
-          safe_fclose (&_fp);
+          m_fclose(&_fp);
         }
       }
       else
@@ -1238,7 +1228,7 @@ void mutt_view_attachments (HEADER * hdr)
       idxmax = 0;
 
       if (need_secured && secured) {
-        fclose (fp);
+        m_fclose(&fp);
         body_list_wipe(&cur);
       }