X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/61ccf1dbeea93978803303d2cd43efa5da2cc7d1..0860f098b5a13f4e8bedb2d2da9d2df94717b4a5:/uip/refile.c diff --git a/uip/refile.c b/uip/refile.c index 3afd0d6d..cbe61cdb 100644 --- a/uip/refile.c +++ b/uip/refile.c @@ -68,13 +68,7 @@ main (int argc, char **argv) struct msgs_array msgs = { 0, 0, NULL }; struct msgs *mp; -#ifdef LOCALE - setlocale(LC_ALL, ""); -#endif - invo_name = r1bindex (argv[0], '/'); - - /* read user profile/context */ - context_read(); + if (nmh_init(argv[0], 1)) { return 1; } arguments = getarguments (invo_name, argc, argv, 1); argp = arguments; @@ -173,11 +167,6 @@ main (int argc, char **argv) if (foldp == 0) adios (NULL, "no folder specified"); -#ifdef WHATNOW - if (!msgs.size && !foldp && !filep && (cp = getenv ("mhdraft")) && *cp) - files[filep++] = cp; -#endif /* WHATNOW */ - /* * We are refiling a file to the folders */ @@ -251,6 +240,14 @@ main (int argc, char **argv) && (mp->numsel != mp->nummsg || linkf)) seq_setcur (mp, mp->hghsel); + /* + * Close destination folders now; if we are using private sequences + * we need to have all of our calls to seq_save() complete before we + * call context_save(). + */ + + clsfolds (folders, foldp); + /* If -nolink, then "remove" messages from source folder. * * Note that folder_delmsgs does not call the delete hook @@ -263,8 +260,6 @@ main (int argc, char **argv) context_save (); /* save the context file */ } - clsfolds (folders, foldp); - folder_free (mp); /* free folder structure */ done (0); return 1; @@ -349,7 +344,7 @@ remove_files (int filep, char **files) /* Else just unlink the files */ files++; /* advance past filevec[0] */ for (i = 0; i < filep; i++) { - if (unlink (files[i]) == NOTOK) + if (m_unlink (files[i]) == NOTOK) admonish (files[i], "unable to unlink"); } }