*/
#include <h/mh.h>
+#include <h/utils.h>
#include <fcntl.h>
#include <errno.h>
*/
nummsgs = 0;
maxmsgs = MAXMSGS;
- if (!(msgs = (char **) malloc ((size_t) (maxmsgs * sizeof(*msgs)))))
- adios (NULL, "unable to allocate storage");
+ msgs = (char **) mh_xmalloc ((size_t) (maxmsgs * sizeof(*msgs)));
/*
* Parse arguments
*/
if (nummsgs >= maxmsgs) {
maxmsgs += MAXMSGS;
- if (!(msgs = (char **) realloc (msgs,
- (size_t) (maxmsgs * sizeof(*msgs)))))
- adios (NULL, "unable to reallocate msgs storage");
+ msgs = (char **) mh_xrealloc (msgs,
+ (size_t) (maxmsgs * sizeof(*msgs)));
}
msgs[nummsgs++] = cp;
}
chdir (m_maildir (""));
strncpy (nmaildir, m_maildir (fp->f_name), sizeof(nmaildir));
- if (stat (nmaildir, &st) == NOTOK) {
- if (errno != ENOENT)
- adios (nmaildir, "error on folder");
- cp = concat ("Create folder \"", nmaildir, "\"? ", NULL);
- if (!getanswer (cp))
- done (1);
- free (cp);
- if (!makedir (nmaildir))
- adios (NULL, "unable to create folder %s", nmaildir);
- }
+ create_folder (nmaildir, 0, done);
if (chdir (nmaildir) == NOTOK)
adios (nmaildir, "unable to change directory to");
struct st_fold *fp, *ep;
for (fp = folders, ep = folders + nfolders; fp < ep; fp++) {
- if ((msgnum = folder_addmsg (&fp->f_mp, msgfile, 1, 0, preserve, nfolders == 1 && refile)) == -1)
+ if ((msgnum = folder_addmsg (&fp->f_mp, msgfile, 1, 0, preserve, nfolders == 1 && refile, maildir)) == -1)
return 1;
}
return 0;