]> diplodocus.org Git - nmh/blobdiff - uip/scan.c
mhbuild.c, mhbuildsbr.c: Replace three global ints with bools.
[nmh] / uip / scan.c
index b0c64f1ca0393aab28bde471f7482bd991d805a3..ba238d9c4512dcccc742151e84b662ec40d89daa 100644 (file)
@@ -10,6 +10,7 @@
 #include <h/scansbr.h>
 #include <h/tws.h>
 #include <h/mts.h>
+#include "h/done.h"
 #include <h/utils.h>
 #include "sbr/m_maildir.h"
 #include "sbr/terminal.h"
@@ -44,7 +45,8 @@ main (int argc, char **argv)
     int width = -1, revflag = 0;
     int i, state, msgnum;
     ivector_t seqnum = ivector_create (0);
-    int unseen, num_unseen_seq = 0;
+    bool unseen;
+    int num_unseen_seq = 0;
     char *cp, *maildir, *file = NULL, *folder = NULL;
     char *form = NULL, *format = NULL, buf[BUFSIZ];
     char **argp, *nfs, **arguments;
@@ -52,7 +54,7 @@ main (int argc, char **argv)
     struct msgs *mp;
     FILE *in;
 
-    if (nmh_init(argv[0], 1)) { return 1; }
+    if (nmh_init(argv[0], true, true)) { return 1; }
 
     mts_init ();
     arguments = getarguments (invo_name, argc, argv, 1);
@@ -68,7 +70,7 @@ main (int argc, char **argv)
                    ambigsw (cp, switches);
                    done (1);
                case UNKWNSW: 
-                   adios (NULL, "-%s unknown", cp);
+                   die("-%s unknown", cp);
 
                case HELPSW: 
                    snprintf (buf, sizeof(buf), "%s [+folder] [msgs] [switches]",
@@ -88,12 +90,12 @@ main (int argc, char **argv)
 
                case FORMSW: 
                    if (!(form = *argp++) || *form == '-')
-                       adios (NULL, "missing argument to %s", argp[-2]);
+                       die("missing argument to %s", argp[-2]);
                    format = NULL;
                    continue;
                case FMTSW: 
                    if (!(format = *argp++) || *format == '-')
-                       adios (NULL, "missing argument to %s", argp[-2]);
+                       die("missing argument to %s", argp[-2]);
                    form = NULL;
                    continue;
 
@@ -106,7 +108,7 @@ main (int argc, char **argv)
 
                case WIDTHSW: 
                    if (!(cp = *argp++) || *cp == '-')
-                       adios (NULL, "missing argument to %s", argp[-2]);
+                       die("missing argument to %s", argp[-2]);
                    width = atoi (cp);
                    continue;
                case REVSW:
@@ -118,7 +120,7 @@ main (int argc, char **argv)
 
                case FILESW:
                    if (!(cp = *argp++) || (cp[0] == '-' && cp[1]))
-                       adios (NULL, "missing argument to %s", argp[-2]);
+                       die("missing argument to %s", argp[-2]);
                    if (strcmp (file = cp, "-"))
                        file = path (cp, TFILE);
                    continue;
@@ -126,7 +128,7 @@ main (int argc, char **argv)
        }
        if (*cp == '+' || *cp == '@') {
            if (folder)
-               adios (NULL, "only one folder at a time!");
+               die("only one folder at a time!");
             folder = pluspath (cp);
        } else
             app_msgarg(&msgs, cp);
@@ -145,9 +147,9 @@ main (int argc, char **argv)
      */
     if (file) {
        if (msgs.size)
-           adios (NULL, "\"msgs\" not allowed with -file");
+           die("\"msgs\" not allowed with -file");
        if (folder)
-           adios (NULL, "\"+folder\" not allowed with -file");
+           die("\"+folder\" not allowed with -file");
 
        /* check if "file" is really stdin */
        if (strcmp (file, "-") == 0) {
@@ -192,11 +194,11 @@ main (int argc, char **argv)
 
     /* read folder and create message structure */
     if (!(mp = folder_read (folder, 1)))
-       adios (NULL, "unable to read folder %s", folder);
+       die("unable to read folder %s", folder);
 
     /* check for empty folder */
     if (mp->nummsg == 0)
-       adios (NULL, "no messages in %s", folder);
+       die("no messages in %s", folder);
 
     /* parse all the message ranges/sequences and set SELECTED */
     for (msgnum = 0; msgnum < msgs.size; msgnum++)
@@ -245,10 +247,10 @@ main (int argc, char **argv)
             * Check if message is in any sequence given
             * by Unseen-Sequence profile entry.
             */
-           unseen = 0;
+           unseen = false;
            for (i = 0; i < num_unseen_seq; i++) {
                if (in_sequence(mp, ivector_at (seqnum, i), msgnum)) {
-                   unseen = 1;
+                   unseen = true;
                    break;
                }
            }
@@ -262,7 +264,7 @@ main (int argc, char **argv)
                    break;
 
                default: 
-                   adios (NULL, "scan() botch (%d)", state);
+                   die("scan() botch (%d)", state);
 
                case SCNEOF: 
                    inform("message %d: empty", msgnum);