Use strcasecmp() instead of strcmp() when checking user-supplied encoding
names so that encoding names are treated as case-insensitive. This allows the use of 'utf-8' instead of 'UTF-8' for example and matches the behavior of iconv(1). PR: 167977 Submitted by: buganini@gmail.com MFC after: 1 week
This commit is contained in:
parent
238b419f41
commit
0cbce0671e
@ -168,8 +168,8 @@ iconv_lookupcs(const char *to, const char *from, struct iconv_cspair **cspp)
|
||||
struct iconv_cspair *csp;
|
||||
|
||||
TAILQ_FOREACH(csp, &iconv_cslist, cp_link) {
|
||||
if (strcmp(csp->cp_to, to) == 0 &&
|
||||
strcmp(csp->cp_from, from) == 0) {
|
||||
if (strcasecmp(csp->cp_to, to) == 0 &&
|
||||
strcasecmp(csp->cp_from, from) == 0) {
|
||||
if (cspp)
|
||||
*cspp = csp;
|
||||
return 0;
|
||||
|
@ -102,9 +102,9 @@ iconv_ucs_open(struct iconv_converter_class *dcp,
|
||||
if (cspf)
|
||||
dp->convtype |= KICONV_UCS_COMBINE;
|
||||
for (i = 0; unicode_family[i].name; i++) {
|
||||
if (strcmp(from, unicode_family[i].name) == 0)
|
||||
if (strcasecmp(from, unicode_family[i].name) == 0)
|
||||
dp->convtype |= unicode_family[i].from_flag;
|
||||
if (strcmp(to, unicode_family[i].name) == 0)
|
||||
if (strcasecmp(to, unicode_family[i].name) == 0)
|
||||
dp->convtype |= unicode_family[i].to_flag;
|
||||
}
|
||||
if (strcmp(ENCODING_UNICODE, ENCODING_UTF16) == 0)
|
||||
|
Loading…
Reference in New Issue
Block a user