int return_in_enum; /* enumeration misses some charsets */
} localencs[] = {
{ "<UNKNOWN>", CS_NONE, 0 },
+ { "UTF-8", CS_UTF8, 1 },
{ "ISO-8859-1", CS_ISO8859_1, 1 },
{ "ISO-8859-1 with X11 line drawing", CS_ISO8859_1_X11, 0 },
{ "ISO-8859-2", CS_ISO8859_2, 1 },
{ "ISO-8859-16", CS_ISO8859_16, 1 },
{ "CP437", CS_CP437, 1 },
{ "CP850", CS_CP850, 1 },
+ { "CP852", CS_CP852, 1 },
+ { "CP866", CS_CP866, 1 },
{ "CP1250", CS_CP1250, 1 },
{ "CP1251", CS_CP1251, 1 },
{ "CP1252", CS_CP1252, 1 },
{ "VISCII", CS_VISCII, 1 },
{ "HP ROMAN8", CS_HP_ROMAN8, 1 },
{ "DEC MCS", CS_DEC_MCS, 1 },
- { "UTF-8", CS_UTF8, 1 },
};
const char *charset_to_localenc(int charset)
p = name;
q = localencs[i].name;
while (*p || *q) {
- if (tolower(*p) != tolower(*q))
+ if (tolower((unsigned char)*p) != tolower((unsigned char)*q))
break;
p++; q++;
}