76bcd89
--- cups-1.2svn-r5137/cups/language.c.locale	2006-02-15 20:11:10.000000000 +0000
76bcd89
+++ cups-1.2svn-r5137/cups/language.c	2006-02-23 14:43:59.000000000 +0000
76bcd89
@@ -276,6 +276,7 @@
76bcd89
 #endif /* CODESET */
76bcd89
 			*ptr,		/* Pointer into language/charset */
cvsdist 79dcdc0
 			real[48],	/* Real language name */
cvsdist 79dcdc0
+			ll_cc[48],	/* Language + Country name */
76bcd89
 			filename[1024];	/* Filename for language locale file */
cvsdist 79dcdc0
   cups_encoding_t	encoding;	/* Encoding to use */
76bcd89
   cups_lang_t		*lang;		/* Current language... */
76bcd89
@@ -445,8 +446,10 @@
76bcd89
   country[0] = '\0';
cvsdist 79dcdc0
 
76bcd89
   if (language == NULL || !language[0] ||
76bcd89
-      !strcmp(language, "POSIX"))
76bcd89
+      !strcmp(language, "POSIX")) {
76bcd89
     strcpy(langname, "C");
76bcd89
+    strcpy(ll_cc, langname);
76bcd89
+  }
76bcd89
   else
76bcd89
   {
76bcd89
    /*
76bcd89
@@ -476,6 +479,7 @@
76bcd89
       *ptr = '\0';
76bcd89
     }
cvsdist 79dcdc0
 
76bcd89
+    snprintf(ll_cc, sizeof(ll_cc), "%s_%s", langname, country);
76bcd89
     if (*language == '.' && !charset[0])
76bcd89
     {
76bcd89
      /*
76bcd89
@@ -617,7 +621,7 @@
cvsdist 79dcdc0
   */
cvsdist 79dcdc0
 
cvsdist 79dcdc0
   lang->used ++;
cvsdist 79dcdc0
-  strlcpy(lang->language, real, sizeof(lang->language));
cvsdist 79dcdc0
+  strlcpy(lang->language, ll_cc, sizeof(lang->language));
cvsdist 79dcdc0
 
76bcd89
   if (encoding != CUPS_AUTO_ENCODING)
cvsdist 79dcdc0
     lang->encoding = encoding;