gdm r6113 - in trunk: . gui/simple-greeter
- From: halfline svn gnome org
- To: svn-commits-list gnome org
- Subject: gdm r6113 - in trunk: . gui/simple-greeter
- Date: Sun, 6 Apr 2008 03:20:12 +0100 (BST)
Author: halfline
Date: Sun Apr 6 03:20:12 2008
New Revision: 6113
URL: http://svn.gnome.org/viewvc/gdm?rev=6113&view=rev
Log:
2008-04-05 Ray Strode <rstrode redhat com>
* gui/simple-greeter/gdm-languages.c
(is_fallback_language), (get_language),
(get_translated_language):
Fudge in language name "Unspecified" for
"C" and "POSIX" locales.
Modified:
trunk/ChangeLog
trunk/gui/simple-greeter/gdm-languages.c
Modified: trunk/gui/simple-greeter/gdm-languages.c
==============================================================================
--- trunk/gui/simple-greeter/gdm-languages.c (original)
+++ trunk/gui/simple-greeter/gdm-languages.c Sun Apr 6 03:20:12 2008
@@ -465,6 +465,21 @@
collect_locales_from_directory ();
}
+static gboolean
+is_fallback_language (const char *code)
+{
+ const char *fallback_language_names[] = { "C", "POSIX", NULL };
+ int i;
+
+ for (i = 0; fallback_language_names[i] != NULL; i++) {
+ if (strcmp (code, fallback_language_names[i]) == 0) {
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
static const char *
get_language (const char *code)
{
@@ -473,6 +488,10 @@
g_assert (code != NULL);
+ if (is_fallback_language (code)) {
+ return "Unspecified";
+ }
+
len = strlen (code);
if (len != 2 && len != 3) {
return NULL;
@@ -520,8 +539,12 @@
setlocale (LC_MESSAGES, locale);
}
- translated_name = dgettext ("iso_639", language);
- name = get_first_item_in_semicolon_list (translated_name);
+ if (is_fallback_language (code)) {
+ name = _("Unspecified");
+ } else {
+ translated_name = dgettext ("iso_639", language);
+ name = get_first_item_in_semicolon_list (translated_name);
+ }
if (locale != NULL) {
setlocale (LC_MESSAGES, old_locale);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]