- continue;
-
- case CHECKSW:
- checksw++;
- continue;
- case NCHECKSW:
- checksw = 0;
- continue;
-
- case PAUSESW:
- pausesw = 1;
- continue;
- case NPAUSESW:
- pausesw = 0;
- continue;
-
- case SERIALSW:
- serialsw = 1;
- continue;
- case NSERIALSW:
- serialsw = 0;
- continue;
-
- case PARTSW:
- if (!(cp = *argp++) || *cp == '-')
- adios (NULL, "missing argument to %s", argp[-2]);
- if (npart >= NPARTS)
- adios (NULL, "too many parts (starting with %s), %d max",
- cp, NPARTS);
- parts[npart++] = cp;
- continue;
-
- case TYPESW:
- if (!(cp = *argp++) || *cp == '-')
- adios (NULL, "missing argument to %s", argp[-2]);
- if (ntype >= NTYPES)
- adios (NULL, "too many types (starting with %s), %d max",
- cp, NTYPES);
- types[ntype++] = cp;
- continue;
-
- case FILESW:
- if (!(cp = *argp++) || (*cp == '-' && cp[1]))
- adios (NULL, "missing argument to %s", argp[-2]);
- file = *cp == '-' ? cp : path (cp, TFILE);
- continue;
-
- case FORMSW:
- if (!(cp = *argp++) || *cp == '-')
- adios (NULL, "missing argument to %s", argp[-2]);
- if (formsw)
- free (formsw);
- formsw = getcpy (etcpath (cp));
- continue;
-
- /*
- * Switches for moreproc/mhlproc
- */
- case PROGSW:
- if (!(progsw = *argp++) || *progsw == '-')
- adios (NULL, "missing argument to %s", argp[-2]);
- continue;
- case NPROGSW:
- nomore++;
- continue;
-
- case LENSW:
- case WIDTHSW:
- if (!(cp = *argp++) || *cp == '-')
- adios (NULL, "missing argument to %s", argp[-2]);
- continue;
-
- case VERBSW:
- verbosw = 1;
- continue;
- case NVERBSW:
- verbosw = 0;
- continue;
- case DEBUGSW:
- debugsw = 1;
- continue;
- }
- }
- if (*cp == '+' || *cp == '@') {
- if (folder)
- adios (NULL, "only one folder at a time!");
- else
- folder = path (cp + 1, *cp == '+' ? TFOLDER : TSUBCWF);
- } else {
- /*
- * Check if we need to allocate more space
- * for message names/ranges/sequences.
- */
- if (nummsgs >= maxmsgs) {
- maxmsgs += MAXMSGS;
- if (!(msgs = (char **) realloc (msgs,
- (size_t) (maxmsgs * sizeof(*msgs)))))
- adios (NULL, "unable to reallocate msgs storage");
- }
- msgs[nummsgs++] = cp;
- }
- }
-
- /* null terminate the list of acceptable parts/types */
- parts[npart] = NULL;
- types[ntype] = NULL;
-
- set_endian ();
-
- if ((cp = getenv ("MM_NOASK")) && !strcmp (cp, "1")) {
- nolist = 1;
- pausesw = 0;
- }
-
- /*
- * Check if we've specified an additional profile
- */
- if ((cp = getenv ("MHSHOW"))) {
- if ((fp = fopen (cp, "r"))) {
- readconfig ((struct node **) 0, fp, cp, 0);
- fclose (fp);
- } else {
- admonish ("", "unable to read $MHSHOW profile (%s)", cp);