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;
}
unlink (tempfile);
goto bail;
}
-
}
/* save the new offset for this message. we add `offset' because the
char savefile[_POSIX_PATH_MAX];
- snprintf (savefile, sizeof (savefile), "%s/mutt.%s-%s-%u",
- NONULL (Tempdir), NONULL (Username), NONULL (Hostname),
- (unsigned int) getpid ());
+ snprintf(savefile, sizeof (savefile), "%s/mutt.%s-%u",
+ NONULL(Tempdir), NONULL(Username), (unsigned int)getpid());
rename (tempfile, savefile);
mutt_unblock_signals ();
mx_fastclose_mailbox (ctx);
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) {
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