Use execprog() instead of system() ... partly transition
[mmh] / uip / repl.c
index d847840..e5fbc0f 100644 (file)
@@ -18,31 +18,31 @@ static struct swit switches[] = {
 #define GROUPSW  0
        { "group", 0 },
 #define NGROUPSW  1
-       { "nogroup", 0 },
+       { "nogroup", 2 },
 #define ANNOSW  2
        { "annotate", 0 },
 #define NANNOSW  3
-       { "noannotate", 0 },
+       { "noannotate", 2 },
 #define CCSW  4
        { "cc all|to|cc|me", 0 },
 #define NCCSW  5
-       { "nocc type", 0 },
+       { "nocc type", 2 },
 #define EDITRSW  6
        { "editor editor", 0 },
 #define FILTSW  7
        { "filter filterfile", 0 },
 #define NFILTSW  8
-       { "nofilter", 0 },
+       { "nofilter", 2 },
 #define FORMSW  9
        { "form formfile", 0 },
 #define MIMESW  10
        { "mime", 0 },
 #define NMIMESW  11
-       { "nomime", 0 },
+       { "nomime", 2 },
 #define QURYSW  12
        { "query", 0 },
 #define NQURYSW  13
-       { "noquery", 0 },
+       { "noquery", 2 },
 #define WHATSW  14
        { "whatnowproc program", 0 },
 #define VERSIONSW  15
@@ -143,9 +143,7 @@ main(int argc, char **argv)
 
        filter = getcpy(etcpath(mhlreply));
 
-#ifdef LOCALE
        setlocale(LC_ALL, "");
-#endif
        invo_name = mhbasename(argv[0]);
 
        /* read user profile/context */
@@ -575,11 +573,11 @@ finished:
                /* add an attachment header */
                char buffer[BUFSIZ];
 
-               snprintf(buffer, sizeof buffer, "anno -append -nodate '%s' "
-                               "-comp '%s' -text '+%s %s'",
-                               drft,
-                               attach_hdr, mp->foldpath, m_name(mp->lowsel));
-               if (system(buffer) != 0) {
+               snprintf(buffer, sizeof buffer, "+%s %s",
+                               mp->foldpath, m_name(mp->lowsel));
+               if (execprogl("anno", "anno", "-append", "-nodate",
+                               drft, "-comp", attach_hdr, "-text", buffer,
+                               (char *)NULL) != 0) {
                        advise(NULL, "unable to add attachment header");
                }
        }