X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Flocalcharset.c;h=575372dca4472404c5f0c7a76ba0ced72fe9c184;hb=468e57cb4025983239ff40bb1c05b7d8e4328185;hp=fa6f8a34ae89e2f589f86efb379c288b40d046a7;hpb=506c68800b8e428247472e39568cefc477409684;p=gnulib.git diff --git a/lib/localcharset.c b/lib/localcharset.c index fa6f8a34a..575372dca 100644 --- a/lib/localcharset.c +++ b/lib/localcharset.c @@ -252,18 +252,17 @@ locale_charset () if (codeset == NULL) /* The canonical name cannot be determined. */ codeset = ""; - else if (codeset[0] != '\0') - { - /* Resolve alias. */ - for (aliases = get_charset_aliases (); - *aliases != '\0'; - aliases += strlen (aliases) + 1, aliases += strlen (aliases) + 1) - if (!strcmp (codeset, aliases)) - { - codeset = aliases + strlen (aliases) + 1; - break; - } - } + + /* Resolve alias. */ + for (aliases = get_charset_aliases (); + *aliases != '\0'; + aliases += strlen (aliases) + 1, aliases += strlen (aliases) + 1) + if (strcmp (codeset, aliases) == 0 + || (aliases[0] == '*' && aliases[1] == '\0')) + { + codeset = aliases + strlen (aliases) + 1; + break; + } return codeset; }