Replace done with exit at uip
[mmh] / uip / refile.c
index 76384dd..cdada9b 100644 (file)
@@ -57,9 +57,7 @@ main(int argc, char **argv)
        struct msgs_array msgs = { 0, 0, NULL };
        struct msgs *mp;
 
-#ifdef LOCALE
        setlocale(LC_ALL, "");
-#endif
        invo_name = mhbasename(argv[0]);
 
        context_read();
@@ -75,17 +73,17 @@ main(int argc, char **argv)
                        switch (smatch(++cp, switches)) {
                        case AMBIGSW:
                                ambigsw(cp, switches);
-                               done(1);
+                               exit(1);
                        case UNKWNSW:
                                adios(NULL, "-%s unknown\n", cp);
 
                        case HELPSW:
                                snprintf(buf, sizeof(buf), "%s [msgs] [switches] +folder ...", invo_name);
                                print_help(buf, switches, 1);
-                               done(1);
+                               exit(0);
                        case VERSIONSW:
                                print_version(invo_name);
-                               done(1);
+                               exit(0);
 
                        case LINKSW:
                                linkf++;
@@ -130,11 +128,12 @@ main(int argc, char **argv)
        */
        if (filep > 0) {
                if (folder || msgs.size)
-                       adios(NULL, "use -file or some messages, not both");
+                       adios(NULL, "use -file or msgs, not both");
                opnfolds(folders, foldp);
                for (i = 0; i < filep; i++)
                        if (m_file(files[i], folders, foldp, 0))
-                               done(1);
+                               /* sysexits.h EX_IOERR */
+                               exit(1);
                /* If -nolink, then unlink files */
                if (!linkf) {
                        int i;
@@ -146,7 +145,7 @@ main(int argc, char **argv)
                                        admonish(files[i], "unable to unlink");
                        }
                }
-               done(0);
+               exit(0);
        }
 
        if (!msgs.size)
@@ -169,7 +168,8 @@ main(int argc, char **argv)
        /* parse the message range/sequence/name and set SELECTED */
        for (msgnum = 0; msgnum < msgs.size; msgnum++)
                if (!m_convert(mp, msgs.msgs[msgnum]))
-                       done(1);
+                       /* sysexits.h EX_USAGE */
+                       exit(1);
        seq_setprev(mp);  /* set the previous-sequence */
 
        /* create folder structures for each destination folder */
@@ -185,7 +185,8 @@ main(int argc, char **argv)
                if (is_selected(mp, msgnum)) {
                        cp = getcpy(m_name(msgnum));
                        if (m_file(cp, folders, foldp, !linkf))
-                               done(1);
+                               /* sysexits.h EX_IOERR */
+                               exit(1);
                        free(cp);
                }
        }
@@ -210,8 +211,7 @@ main(int argc, char **argv)
        context_replace(curfolder, folder);
        context_save();
        folder_free(mp);
-       done(0);
-       return 1;
+       return 0;
 }