gdm r5856 - in trunk: . gui/simple-greeter
- From: halfline svn gnome org
- To: svn-commits-list gnome org
- Subject: gdm r5856 - in trunk: . gui/simple-greeter
- Date: Mon, 25 Feb 2008 21:20:35 +0000 (GMT)
Author: halfline
Date: Mon Feb 25 21:20:35 2008
New Revision: 5856
URL: http://svn.gnome.org/viewvc/gdm?rev=5856&view=rev
Log:
2008-02-25 Ray Strode <rstrode redhat com>
* gui/simple-greeter/gdm-languages.c:
(get_first_item_in_semicolon_list),
(get_translated_language),
(get_translated_territory):
Move some duplicated code for pulling
language/territory names out into a common
function
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 Mon Feb 25 21:20:35 2008
@@ -455,6 +455,24 @@
}
static char *
+get_first_item_in_semicolon_list (const char *list)
+{
+ char **items;
+ char *item;
+
+ /* Some entries in iso codes have multiple values, separated
+ * by semicolons. Not really sure which one to pick, so
+ * we just arbitrarily pick the first one.
+ */
+ items = g_strsplit (list, "; ", 2);
+
+ item = g_strdup (items[0]);
+ g_strfreev (items);
+
+ return item;
+}
+
+static char *
get_translated_language (const char *code,
const char *locale)
{
@@ -472,14 +490,13 @@
old_locale = g_strdup (setlocale (LC_MESSAGES, NULL));
setlocale (LC_MESSAGES, locale);
translated_name = dgettext ("iso_639", language);
+
+ name = get_first_item_in_semicolon_list (translated_name);
+
setlocale (LC_MESSAGES, old_locale);
g_free (old_locale);
- names = g_strsplit (translated_name, "; ", 2);
-
- name = g_strdup (names[0]);
- g_strfreev (names);
- }
+ }
return name;
}
@@ -523,10 +540,7 @@
setlocale (LC_MESSAGES, old_locale);
g_free (old_locale);
- territories = g_strsplit (translated_territory, "; ", 2);
-
- name = g_strdup (territories[0]);
- g_strfreev (territories);
+ name = get_first_item_in_semicolon_list (translated_territory);
}
return name;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]