X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=mailinfo.c;h=3c56f8c10801bdc93eaaac6319e477f81c096717;hb=b4a081b428c607f98c5d0a0eec8d543dc1f2abcd;hp=9f95f37651e2ce5a3930051fe875f1c16ede97c2;hpb=e0e3ba208d235ab5623a86204fbd20b449520764;p=git.git diff --git a/mailinfo.c b/mailinfo.c index 9f95f376..3c56f8c1 100644 --- a/mailinfo.c +++ b/mailinfo.c @@ -7,7 +7,9 @@ #include #include #include +#ifndef NO_ICONV #include +#endif #include "git-compat-util.h" #include "cache.h" @@ -469,10 +471,11 @@ static int decode_b_segment(char *in, char *ot, char *ep) static void convert_to_utf8(char *line, char *charset) { +#ifndef NO_ICONV char *in, *out; size_t insize, outsize, nrc; char outbuf[4096]; /* cheat */ - static char latin_one[] = "latin-1"; + static char latin_one[] = "latin1"; char *input_charset = *charset ? charset : latin_one; iconv_t conv = iconv_open(metainfo_charset, input_charset); @@ -501,6 +504,7 @@ static void convert_to_utf8(char *line, char *charset) return; *out = 0; strcpy(line, outbuf); +#endif } static void decode_header_bq(char *it) @@ -707,6 +711,9 @@ static void handle_multipart_body(void) if (!len) { if (handle_multipart_one_part() < 0) return; + /* Reset per part headers */ + transfer_encoding = TE_DONTCARE; + charset[0] = 0; } else check_subheader_line(line, len);