X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Frefile.c;h=bb7f00a119b332a8ddebab963467e9bb2307bc81;hp=c184dc1f09cffab92cbd037d16f3c214fc6a6567;hb=08aa8c17c3241bb5c6a997ed2e01e25a4d0089ce;hpb=4885712264980e6cbc2039f9158027bee9213475 diff --git a/uip/refile.c b/uip/refile.c index c184dc1..bb7f00a 100644 --- a/uip/refile.c +++ b/uip/refile.c @@ -11,6 +11,7 @@ */ #include +#include #include #include @@ -97,8 +98,7 @@ main (int argc, char **argv) */ 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 @@ -185,9 +185,8 @@ main (int argc, char **argv) */ 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; } @@ -313,16 +312,7 @@ opnfolds (struct st_fold *folders, int nfolders) 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"); @@ -400,7 +390,7 @@ m_file (char *msgfile, struct st_fold *folders, int nfolders, int preserve, int 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;