]> diplodocus.org Git - nmh/blobdiff - uip/mhparam.c
Simplified m_strn() per Ralph's suggestions.
[nmh] / uip / mhparam.c
index 3b259e7f507f0c84e24c36e142988c5245c3ca7b..17705bc894346f04508edbdf4cac0e99805d5eb6 100644 (file)
@@ -1,6 +1,4 @@
-
-/*
- * mhparam.c -- print mh_profile values
+/* mhparam.c -- print mh_profile values
  *
  * Originally contributed by
  * Jeffrey C Honig <Jeffrey_C_Honig@cornell.edu>
@@ -12,6 +10,7 @@
 
 #include <h/mh.h>
 #include <h/mts.h>
+#include <h/utils.h>
 
 #define MHPARAM_SWITCHES \
     X("components", 0, COMPSW) \
@@ -145,7 +144,7 @@ main(int argc, char **argv)
     char *cp, buf[BUFSIZ], **argp;
     char **arguments, *comps[MAXARGS];
 
-    if (nmh_init(argv[0], 1)) { return 1; }
+    if (nmh_init(argv[0], 2)) { return 1; }
 
     arguments = getarguments (invo_name, argc, argv, 1);
     argp = arguments;
@@ -196,10 +195,10 @@ main(int argc, char **argv)
         struct node *np;
 
        if (compp)
-           advise(NULL, "profile-components ignored with -all");
+           inform("profile-components ignored with -all");
 
        if (components >= 0)
-           advise(NULL, "-%scomponents ignored with -all",
+           inform("-%scomponents ignored with -all",
                   components ? "" : "no");
 
        /* Print all entries in context/profile list.  That does not
@@ -207,7 +206,9 @@ main(int argc, char **argv)
        for (np = m_defs; np; np = np->n_next)
            printf("%s: %s\n", np->n_name, np->n_field);
 
-    } else if (debug) {
+    }
+
+    if (debug) {
        struct proc *ps;
 
        /* In case datalocking was set in profile. */
@@ -228,14 +229,16 @@ main(int argc, char **argv)
         * value (as determined after context is read).
          */
        for (ps = procs; ps->p_name; ps++)
-           printf ("%s: %s\n", ps->p_name, *ps->p_field ? *ps->p_field : "");
+           printf ("%s: %s\n", ps->p_name, FENDNULL(*ps->p_field));
+
+    }
 
-    } else {
+    if (! all) {
         if (components < 0)
            components = compp > 1;
 
        for (i = 0; i < compp; i++)  {
-           register char *value;
+           char *value;
 
            if (! strcmp ("spoollocking", comps[i])) {
                /* In case spoollocking was set in mts.conf. */
@@ -249,8 +252,8 @@ main(int argc, char **argv)
                if (components)
                    printf("%s: ", comps[i]);
 
-               printf("%s\n", value);
-           } else
+               puts(value);
+           } else if (missed < 120)
                missed++;
        }
     }
@@ -266,7 +269,7 @@ p_find(char *str)
     struct proc *ps;
 
     for (ps = procs; ps->p_name; ps++)
-       if (!strcasecmp (ps->p_name, str ? str : ""))
+       if (!strcasecmp (ps->p_name, str))
            return (*ps->p_field);
 
     return NULL;