summaryrefslogtreecommitdiff
path: root/builtin-mailinfo.c
diff options
context:
space:
mode:
authorLibravatar Brandon Casey <casey@nrlssc.navy.mil>2009-05-18 18:44:40 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2009-05-18 20:53:14 -0700
commited1e3985e445e4cb4558056f8a31c366f2bf2634 (patch)
tree440b663aae7a33222b10fe90eab16af8fb2f8993 /builtin-mailinfo.c
parentUse 'UTF-8' rather than 'utf-8' everywhere for backward compatibility (diff)
downloadtgif-ed1e3985e445e4cb4558056f8a31c366f2bf2634.tar.xz
builtin-mailinfo.c: compare character encodings case insensitively
When converting between character encodings, git tests whether the "from" encoding and the "to" encoding have the same name. git should perform this test case insensitively so that e.g. utf-8 is not seen as a different encoding than UTF-8. Additionally, it is not necessary to call tolower() anymore on the encodings extracted from the mail message. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-mailinfo.c')
-rw-r--r--builtin-mailinfo.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c
index 5ebc8b53cc..c68187e2e9 100644
--- a/builtin-mailinfo.c
+++ b/builtin-mailinfo.c
@@ -193,8 +193,7 @@ static void handle_content_type(struct strbuf *line)
*content_top = boundary;
boundary = NULL;
}
- if (slurp_attr(line->buf, "charset=", &charset))
- strbuf_tolower(&charset);
+ slurp_attr(line->buf, "charset=", &charset);
if (boundary) {
strbuf_release(boundary);
@@ -494,7 +493,7 @@ static void convert_to_utf8(struct strbuf *line, const char *charset)
return;
}
- if (!strcmp(metainfo_charset, charset))
+ if (!strcasecmp(metainfo_charset, charset))
return;
out = reencode_string(line->buf, metainfo_charset, charset);
if (!out)
@@ -550,7 +549,6 @@ static int decode_header_bq(struct strbuf *it)
if (cp + 3 - it->buf > it->len)
goto decode_header_bq_out;
strbuf_add(&charset_q, ep, cp - ep);
- strbuf_tolower(&charset_q);
encoding = cp[1];
if (!encoding || cp[2] != '?')