From: Thomas Roessler Date: Fri, 8 Sep 2000 08:05:17 +0000 (+0000) Subject: Add a character set comparison function. X-Git-Tag: mutt-1-3-9-rel~13 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7b56fe2279f890ea43547c1be50cce1beb59b9c9;p=mutt Add a character set comparison function. --- diff --git a/charset.c b/charset.c index 325f023b..af4ecded 100644 --- a/charset.c +++ b/charset.c @@ -232,15 +232,14 @@ void mutt_canonical_charset (char *dest, size_t dlen, const char *name) *p += 'a' - 'A'; } -int mutt_is_utf8 (const char *s) +int mutt_chscmp (const char *s, const char *chs) { - char buffer[8]; + char buffer[STRING]; - if (!s) - return 0; + if (!s) return 0; mutt_canonical_charset (buffer, sizeof (buffer), s); - return !mutt_strcmp (buffer, "utf-8"); + return !mutt_strcasecmp (buffer, chs); } diff --git a/protos.h b/protos.h index 40cbdfee..e582aa4c 100644 --- a/protos.h +++ b/protos.h @@ -246,7 +246,9 @@ int mutt_display_message (HEADER *h); int mutt_edit_attachment(BODY *); int mutt_edit_message (CONTEXT *, HEADER *); int mutt_fetch_recips (ENVELOPE *out, ENVELOPE *in, int flags); -int mutt_is_utf8 (const char *); +int mutt_chscmp (const char *s, const char *chs); +#define mutt_is_utf8(a) mutt_chscmp (a, "utf-8") +#define mutt_is_us_ascii(a) mutt_chscmp (a, "us-ascii") int mutt_parent_message (CONTEXT *, HEADER *); int mutt_prepare_template(FILE*, CONTEXT *, HEADER *, HEADER *, short); int mutt_resend_message (FILE *, CONTEXT *, HEADER *); diff --git a/rfc2231.c b/rfc2231.c index f2d01bd5..92e94202 100644 --- a/rfc2231.c +++ b/rfc2231.c @@ -330,7 +330,7 @@ int rfc2231_encode_string (char **pd) d = *pd, dlen = strlen (d); } - if (strcasecmp (charset, "us-ascii")) + if (!mutt_is_us_ascii (charset)) encode = 1; for (s = d, slen = dlen; slen; s++, slen--) diff --git a/sendlib.c b/sendlib.c index 6f991ff4..c3aca6ae 100644 --- a/sendlib.c +++ b/sendlib.c @@ -1225,7 +1225,7 @@ void mutt_update_encoding (BODY *a) char chsbuff[STRING]; /* override noconv when it's us-ascii */ - if (!mutt_strcasecmp (mutt_get_body_charset (chsbuff, sizeof (chsbuff), a), "us-ascii")) + if (mutt_is_us_ascii (mutt_get_body_charset (chsbuff, sizeof (chsbuff), a))) a->noconv = 0; if (!a->force_charset && !a->noconv)