diff options
author | Alexander Larsson <alexl@redhat.com> | 2002-12-17 12:26:30 +0000 |
---|---|---|
committer | Alexander Larsson <alexl@src.gnome.org> | 2002-12-17 12:26:30 +0000 |
commit | 8abd0920e015ab3e5c510132edda9027e1c240e5 (patch) | |
tree | bd93c27e1c50d51527424aa3835de1e1873920b0 /libnautilus-private | |
parent | 278b84cc5fb8b9375f3be5b83a5c6d7bb06105bd (diff) | |
download | nautilus-8abd0920e015ab3e5c510132edda9027e1c240e5.tar.gz |
Use gnome_i18n_get_language_list. (#100393)
2002-12-17 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-view-identifier.c (get_lang_list):
Use gnome_i18n_get_language_list. (#100393)
Diffstat (limited to 'libnautilus-private')
-rw-r--r-- | libnautilus-private/nautilus-view-identifier.c | 52 |
1 files changed, 13 insertions, 39 deletions
diff --git a/libnautilus-private/nautilus-view-identifier.c b/libnautilus-private/nautilus-view-identifier.c index f77152777..4528189f4 100644 --- a/libnautilus-private/nautilus-view-identifier.c +++ b/libnautilus-private/nautilus-view-identifier.c @@ -84,51 +84,25 @@ nautilus_view_identifier_copy (const NautilusViewIdentifier *identifier) static GSList * get_lang_list (void) { - GSList *retval; - const char *tmp; - char *lang, *lang_with_locale, *org_pointer; - char *equal_char; + GSList *retval; + const GList *l; + const char *lang; - retval = NULL; - - tmp = g_getenv ("LANGUAGE"); - - if (tmp == NULL) { - tmp = g_getenv ("LANG"); - } - - lang = g_strdup (tmp); - org_pointer = lang; - - if (lang != NULL) { - /* envs can be in NAME=VALUE form */ - equal_char = strchr (lang, '='); - if (equal_char != NULL) { - lang = equal_char + 1; + retval = NULL; + + for (l = gnome_i18n_get_language_list (NULL); + l != NULL; + l = g_list_next (l)) { + lang = l->data; + /* skip C locale */ + if (l->data && strcmp (lang, "C") == 0) { + continue; } - /* lang may be in form LANG_LOCALE */ - equal_char = strchr (lang, '_'); - if (equal_char != NULL) { - lang_with_locale = g_strdup (lang); - *equal_char = 0; - } else { - lang_with_locale = NULL; - } - - /* Make sure we don't give oaf an empty - lang string */ - if (!eel_str_is_empty (lang_with_locale)) { - retval = g_slist_prepend (retval, - g_strdup (lang_with_locale)); - } - g_free (lang_with_locale); if (!eel_str_is_empty (lang)) { retval = g_slist_prepend (retval, g_strdup (lang)); } - } - g_free (org_pointer); - + } return retval; } |