summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Roessler <roessler@does-not-exist.org>1998-07-14 15:42:25 +0000
committerThomas Roessler <roessler@does-not-exist.org>1998-07-14 15:42:25 +0000
commitd00c3ca215752e69f7cfbbf1d232c76aad5a8bb5 (patch)
treeb080428e86a7dbdec3008438879eee8e84de0073
parenta05e537c418c2bc0bcaad1bfc9622aee525e4fca (diff)
More unsigned fixes.
-rw-r--r--handler.c8
-rw-r--r--mime.h4
-rw-r--r--rfc2047.c8
3 files changed, 10 insertions, 10 deletions
diff --git a/handler.c b/handler.c
index c754613d..2f6f5a19 100644
--- a/handler.c
+++ b/handler.c
@@ -210,8 +210,8 @@ void mutt_decode_base64 (STATE *s, long len, int istext)
if (i != 4)
return; /* didn't get a multiple of four chars! */
- c1 = base64val ((int) buf[0]);
- c2 = base64val ((int) buf[1]);
+ c1 = base64val (buf[0]);
+ c2 = base64val (buf[1]);
ch = (c1 << 2) | (c2 >> 4);
if (cr && ch != '\n') state_putc ('\r', s);
@@ -227,7 +227,7 @@ void mutt_decode_base64 (STATE *s, long len, int istext)
if (buf[2] == '=')
break;
- c3 = base64val ((int) buf[2]);
+ c3 = base64val (buf[2]);
ch = ((c2 & 0xf) << 4) | (c3 >> 2);
if (cr && ch != '\n')
@@ -244,7 +244,7 @@ void mutt_decode_base64 (STATE *s, long len, int istext)
}
if (buf[3] == '=') break;
- c4 = base64val ((int) buf[3]);
+ c4 = base64val (buf[3]);
ch = ((c3 & 0x3) << 6) | c4;
if (cr && ch != '\n')
diff --git a/mime.h b/mime.h
index 662bae1c..f7d2ec62 100644
--- a/mime.h
+++ b/mime.h
@@ -53,8 +53,8 @@ extern int Index_hex[];
extern int Index_64[];
extern char Base64_chars[];
-#define hexval(c) Index_hex[(int)(c)]
-#define base64val(c) Index_64[(int)(c)]
+#define hexval(c) Index_hex[(unsigned int)(c)]
+#define base64val(c) Index_64[(unsigned int)(c)]
#define is_multipart(x) \
((x)->type == TYPEMULTIPART \
diff --git a/rfc2047.c b/rfc2047.c
index 6db699c7..4c8c34f0 100644
--- a/rfc2047.c
+++ b/rfc2047.c
@@ -291,14 +291,14 @@ static int rfc2047_decode_word (char *d, const char *s, size_t len)
{
while (*pp && len > 0)
{
- c1 = Index_64[(int) pp[0]];
- c2 = Index_64[(int) pp[1]];
+ c1 = base64val(pp[0]);
+ c2 = base64val(pp[1]);
*pd++ = (c1 << 2) | ((c2 >> 4) & 0x3);
if (--len == 0) break;
if (pp[2] == '=') break;
- c3 = Index_64[(int) pp[2]];
+ c3 = base64val(pp[2]);
*pd++ = ((c2 & 0xf) << 4) | ((c3 >> 2) & 0xf);
if (--len == 0)
break;
@@ -306,7 +306,7 @@ static int rfc2047_decode_word (char *d, const char *s, size_t len)
if (pp[3] == '=')
break;
- c4 = Index_64[(int) pp[3]];
+ c4 = base64val(pp[3]);
*pd++ = ((c3 & 0x3) << 6) | c4;
if (--len == 0)
break;