/*
- * "$Id: language.c 5366 2006-04-02 16:11:04Z mike $"
+ * "$Id: language.c 5769 2006-07-20 17:17:14Z mike $"
*
* I18N/language support for the Common UNIX Printing System (CUPS).
*
* cupsLangEncoding() - Return the character encoding (us-ascii, etc.)
* for the given language.
* cupsLangFlush() - Flush all language data out of the cache.
- * _cupsLangFlush() - Flush all language data out of the cache.
* cupsLangFree() - Free language data.
* cupsLangGet() - Get a language.
* _cupsLangString() - Get a message string.
encoding = (cups_encoding_t)i;
break;
}
+
+ if (encoding == CUPS_AUTO_ENCODING)
+ {
+ /*
+ * Map alternate names for various character sets...
+ */
+
+ if (!strcasecmp(charset, "iso-2022-jp") ||
+ !strcasecmp(charset, "sjis"))
+ encoding = CUPS_WINDOWS_932;
+ else if (!strcasecmp(charset, "iso-2022-cn"))
+ encoding = CUPS_WINDOWS_936;
+ else if (!strcasecmp(charset, "iso-2022-kr"))
+ encoding = CUPS_WINDOWS_949;
+ else if (!strcasecmp(charset, "big5"))
+ encoding = CUPS_WINDOWS_950;
+ }
}
DEBUG_printf(("cupsLangGet: encoding=%d(%s)\n", encoding,
*d = *d * 8 + *s - '0';
s ++;
}
+
+ d ++;
}
else
{
/*
- * End of "$Id: language.c 5366 2006-04-02 16:11:04Z mike $".
+ * End of "$Id: language.c 5769 2006-07-20 17:17:14Z mike $".
*/