safe_fclose -> m_fclose, and is now inlined.
[apps/madmutt.git] / lib-mx / mbox.c
index 03c8d27..d1b2746 100644 (file)
@@ -546,15 +546,9 @@ static int mbox_sync_mailbox (CONTEXT * ctx, int unused __attribute__ ((unused))
     return (-1);
 
   /* Create a temporary file to write the new version of the mailbox in. */
-  mutt_mktemp (tempfile);
-  if ((i = open (tempfile, O_WRONLY | O_EXCL | O_CREAT, 0600)) == -1 ||
-      (fp = fdopen (i, "w")) == NULL) {
-    if (-1 != i) {
-      close (i);
-      unlink (tempfile);
-    }
+  fp = m_tempfile(tempfile, _POSIX_PATH_MAX, NONULL(Tempdir), NULL);
+  if (fp == NULL) {
     mutt_error _("Could not create temporary file!");
-
     mutt_sleep (5);
     goto bail;
   }
@@ -616,7 +610,6 @@ static int mbox_sync_mailbox (CONTEXT * ctx, int unused __attribute__ ((unused))
           unlink (tempfile);
           goto bail;
         }
-
       }
 
       /* save the new offset for this message.  we add `offset' because the
@@ -770,7 +763,7 @@ static int mbox_sync_mailbox (CONTEXT * ctx, int unused __attribute__ ((unused))
 
 bail:                          /* Come here in case of disaster */
 
-  safe_fclose (&fp);
+  m_fclose(&fp);
 
   /* restore offsets, as far as they are valid */
   if (first >= 0 && oldOffset) {
@@ -1016,7 +1009,7 @@ int mbox_is_magic (const char* path, struct stat* st) {
       magic = M_MBOX;
     else if (m_strcmp(MMDF_SEP, tmp) == 0)
       magic = M_MMDF;
-    safe_fclose (&f);
+    m_fclose(&f);
 
     /* need to restore the times here, the file was not really accessed,
      * only the type was accessed.  This is important, because detection