]> diplodocus.org Git - nmh/blobdiff - uip/show.c
Use a dynamically-allocated buffer for character set conversion, and
[nmh] / uip / show.c
index dc4261300d1a5e1a91af6b1aa9715d08664a3150..acd08afb1bc9cbe1e4ae7a1e5475b6a49ed2e25e 100644 (file)
@@ -61,17 +61,11 @@ main (int argc, char **argv)
     struct msgs_array msgs = { 0, 0, NULL };
     struct msgs_array vec = { 0, 0, NULL };
 
     struct msgs_array msgs = { 0, 0, NULL };
     struct msgs_array vec = { 0, 0, NULL };
 
-#ifdef LOCALE
-    setlocale(LC_ALL, "");
-#endif
-    invo_name = r1bindex (argv[0], '/');
+    if (nmh_init(argv[0], 1)) { return 1; }
 
 
-    /* read user profile/context */
-    context_read();
-
-    if (!mh_strcasecmp (invo_name, "next")) {
+    if (!strcasecmp (invo_name, "next")) {
        mode = NEXT;
        mode = NEXT;
-    } else if (!mh_strcasecmp (invo_name, "prev")) {
+    } else if (!strcasecmp (invo_name, "prev")) {
        mode = PREV;
     }
     arguments = getarguments (invo_name, argc, argv, 1);
        mode = PREV;
     }
     arguments = getarguments (invo_name, argc, argv, 1);
@@ -191,14 +185,6 @@ usage:
        goto go_to_it;
     }
 
        goto go_to_it;
     }
 
-#ifdef WHATNOW
-    if (!msgs.size && !folder && mode == SHOW && (cp = getenv ("mhdraft")) && *cp) {
-       draftsw++;
-       app_msgarg(&vec, cp);
-       goto go_to_it;
-    }
-#endif /* WHATNOW */
-
     if (!msgs.size) {
        switch (mode) {
            case NEXT:
     if (!msgs.size) {
        switch (mode) {
            case NEXT:
@@ -221,7 +207,7 @@ usage:
        adios (maildir, "unable to change directory to");
 
     /* read folder and create message structure */
        adios (maildir, "unable to change directory to");
 
     /* read folder and create message structure */
-    if (!(mp = folder_read (folder)))
+    if (!(mp = folder_read (folder, 1)))
        adios (NULL, "unable to read folder %s", folder);
 
     /* check for empty folder */
        adios (NULL, "unable to read folder %s", folder);
 
     /* check for empty folder */
@@ -346,7 +332,7 @@ is_nontext (char *msgnam)
            /*
             * Check Content-Type field
             */
            /*
             * Check Content-Type field
             */
-           if (!mh_strcasecmp (name, TYPE_FIELD)) {
+           if (!strcasecmp (name, TYPE_FIELD)) {
                int passno;
                char c;
 
                int passno;
                char c;
 
@@ -402,7 +388,7 @@ invalid:
                if (!*bp)
                    goto invalid;
                if (passno > 1) {
                if (!*bp)
                    goto invalid;
                if (passno > 1) {
-                   if ((result = (mh_strcasecmp (bp, "plain") != 0)))
+                   if ((result = (strcasecmp (bp, "plain") != 0)))
                        goto out;
                    *dp = c;
                    for (dp++; isspace ((unsigned char) *dp); dp++)
                        goto out;
                    *dp = c;
                    for (dp++; isspace ((unsigned char) *dp); dp++)
@@ -434,7 +420,7 @@ invalid:
                    /* Check the character set */
                    result = !check_charset (dp, strlen (dp));
                } else {
                    /* Check the character set */
                    result = !check_charset (dp, strlen (dp));
                } else {
-                   if (!(result = (mh_strcasecmp (bp, "text") != 0))) {
+                   if (!(result = (strcasecmp (bp, "text") != 0))) {
                        *dp = c;
                        bp = dp;
                        passno = 2;
                        *dp = c;
                        bp = dp;
                        passno = 2;
@@ -454,7 +440,7 @@ out:
            /*
             * Check Content-Transfer-Encoding field
             */
            /*
             * Check Content-Transfer-Encoding field
             */
-           if (!mh_strcasecmp (name, ENCODING_FIELD)) {
+           if (!strcasecmp (name, ENCODING_FIELD)) {
                cp = add (buf, NULL);
                while (state == FLDPLUS) {
                    bufsz = sizeof buf;
                cp = add (buf, NULL);
                while (state == FLDPLUS) {
                    bufsz = sizeof buf;
@@ -466,9 +452,9 @@ out:
                for (dp = bp; istoken ((unsigned char) *dp); dp++)
                    continue;
                *dp = '\0';
                for (dp = bp; istoken ((unsigned char) *dp); dp++)
                    continue;
                *dp = '\0';
-               result = (mh_strcasecmp (bp, "7bit")
-                      && mh_strcasecmp (bp, "8bit")
-                      && mh_strcasecmp (bp, "binary"));
+               result = (strcasecmp (bp, "7bit")
+                      && strcasecmp (bp, "8bit")
+                      && strcasecmp (bp, "binary"));
 
                free (cp);
                if (result) {
 
                free (cp);
                if (result) {