On Win32, look explicitly for LANG, LC_ALL and LC_CTYPE, and if not found,

2002-09-20  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
	explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
	g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
	locale name in the form Swedish_Finland for sv_FI.
This commit is contained in:
Tor Lillqvist
2002-09-19 23:19:24 +00:00
committed by Tor Lillqvist
parent a3c4bfba73
commit b5fbd51495
7 changed files with 72 additions and 0 deletions

View File

@@ -1,3 +1,10 @@
2002-09-20 Tor Lillqvist <tml@iki.fi>
* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
locale name in the form Swedish_Finland for sv_FI.
2002-09-16 Tor Lillqvist <tml@iki.fi>
* gdk/gdkfont.h: Delete leftover declarations of the obsolete

View File

@@ -1,3 +1,10 @@
2002-09-20 Tor Lillqvist <tml@iki.fi>
* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
locale name in the form Swedish_Finland for sv_FI.
2002-09-16 Tor Lillqvist <tml@iki.fi>
* gdk/gdkfont.h: Delete leftover declarations of the obsolete

View File

@@ -1,3 +1,10 @@
2002-09-20 Tor Lillqvist <tml@iki.fi>
* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
locale name in the form Swedish_Finland for sv_FI.
2002-09-16 Tor Lillqvist <tml@iki.fi>
* gdk/gdkfont.h: Delete leftover declarations of the obsolete

View File

@@ -1,3 +1,10 @@
2002-09-20 Tor Lillqvist <tml@iki.fi>
* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
locale name in the form Swedish_Finland for sv_FI.
2002-09-16 Tor Lillqvist <tml@iki.fi>
* gdk/gdkfont.h: Delete leftover declarations of the obsolete

View File

@@ -1,3 +1,10 @@
2002-09-20 Tor Lillqvist <tml@iki.fi>
* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
locale name in the form Swedish_Finland for sv_FI.
2002-09-16 Tor Lillqvist <tml@iki.fi>
* gdk/gdkfont.h: Delete leftover declarations of the obsolete

View File

@@ -1,3 +1,10 @@
2002-09-20 Tor Lillqvist <tml@iki.fi>
* gtk/gtkmain.c (gtk_get_default_language): On Win32, look
explicitly for LANG, LC_ALL and LC_CTYPE, and if not found, use
g_win32_getlocale(). The setlocale() in msvcrt.dll would return a
locale name in the form Swedish_Finland for sv_FI.
2002-09-16 Tor Lillqvist <tml@iki.fi>
* gdk/gdkfont.h: Delete leftover declarations of the obsolete

View File

@@ -892,7 +892,37 @@ gtk_get_default_language (void)
PangoLanguage *result;
gchar *p;
#ifdef G_OS_WIN32
/* Somebody might try to set the locale for this process using the
* LANG or LC_ environment variables. The Microsoft C library
* doesn't know anything about them. You set the locale in the
* Control Panel. Setting these env vars won't have any affect on
* locale-dependent C library functions like ctime. But just for
* kicks, do obey LC_ALL, LANG and LC_CTYPE in GTK. (This also makes
* it easier to test GTK and Pango in various default languages, you
* don't have to clickety-click in the Control Panel, you can simply
* start the program with LC_ALL=something on the command line.)
*/
p = getenv ("LC_ALL");
if (p != NULL)
lang = g_strdup (p);
else
{
p = getenv ("LANG");
if (p != NULL)
lang = g_strdup (p);
else
{
p = getenv ("LC_CTYPE");
if (p != NULL)
lang = g_strdup (p);
else
lang = g_win32_getlocale ();
}
}
#else
lang = g_strdup (setlocale (LC_CTYPE, NULL));
#endif
p = strchr (lang, '.');
if (p)
*p = '\0';