move some decoding functions right into the str module, with a bit more
[apps/madmutt.git] / rfc2047.c
index 84028ab..d973d26 100644 (file)
--- a/rfc2047.c
+++ b/rfc2047.c
@@ -14,9 +14,9 @@
 
 #include <lib-lib/mem.h>
 #include <lib-lib/str.h>
 
 #include <lib-lib/mem.h>
 #include <lib-lib/str.h>
+#include <lib-lib/ascii.h>
 
 #include "mutt.h"
 
 #include "mutt.h"
-#include "ascii.h"
 #include "mime.h"
 #include "charset.h"
 #include "rfc2047.h"
 #include "mime.h"
 #include "charset.h"
 #include "rfc2047.h"
@@ -599,7 +599,7 @@ static int rfc2047_decode_word (char *d, const char *s, size_t len)
         for (; pp < pp1; pp++) {
           if (*pp == '=')
             break;
         for (; pp < pp1; pp++) {
           if (*pp == '=')
             break;
-          if ((*pp & ~127) || (c = base64val (*pp)) == -1)
+          if ((c = base64val(*pp)) < 0)
             continue;
           if (k + 6 >= 8) {
             k -= 2;
             continue;
           if (k + 6 >= 8) {
             k -= 2;
@@ -619,7 +619,7 @@ static int rfc2047_decode_word (char *d, const char *s, size_t len)
 
   if (charset)
     mutt_convert_string (&d0, charset, Charset, M_ICONV_HOOK_FROM);
 
   if (charset)
     mutt_convert_string (&d0, charset, Charset, M_ICONV_HOOK_FROM);
-  strfcpy (d, d0, len);
+  m_strcpy(d, len, d0);
   p_delete(&charset);
   p_delete(&d0);
   return (0);
   p_delete(&charset);
   p_delete(&d0);
   return (0);