(locale_charset): Allow wildcard syntax. Also resolve
authorJim Meyering <jim@meyering.net>
Thu, 15 Mar 2001 14:49:56 +0000 (14:49 +0000)
committerJim Meyering <jim@meyering.net>
Thu, 15 Mar 2001 14:49:56 +0000 (14:49 +0000)
alias if codeset is empty.

lib/localcharset.c

index fa6f8a3..575372d 100644 (file)
@@ -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;
 }