E locale: Set LANG, not LC_ALL when setting locale.
authorTom Hacohen <tom@stosb.com>
Thu, 18 Aug 2011 07:41:20 +0000 (07:41 +0000)
committerTom Hacohen <tom@stosb.com>
Thu, 18 Aug 2011 07:41:20 +0000 (07:41 +0000)
SVN revision: 62558

src/bin/e_intl.c

index c150f68..a22c626 100644 (file)
@@ -3,7 +3,7 @@
 static Ecore_Exe *_e_intl_input_method_exec = NULL;
 static Ecore_Event_Handler *_e_intl_exit_handler = NULL;
 
-static char *_e_intl_orig_lc_all = NULL;
+static char *_e_intl_orig_lang = NULL;
 static char *_e_intl_language = NULL;
 
 static char *_e_intl_language_alias = NULL;
@@ -55,7 +55,7 @@ e_intl_init(void)
 
    e_intl_data_init();
 
-   if ((s = getenv("LC_ALL"))) _e_intl_orig_lc_all = strdup(s);
+   if ((s = getenv("LANG"))) _e_intl_orig_lang = strdup(s);
 
    if ((s = getenv("GTK_IM_MODULE"))) _e_intl_orig_gtk_im_module = strdup(s);
    if ((s = getenv("QT_IM_MODULE"))) _e_intl_orig_qt_im_module = strdup(s);
@@ -69,7 +69,7 @@ EINTERN int
 e_intl_shutdown(void)
 {
    E_FREE(_e_intl_language);
-   E_FREE(_e_intl_orig_lc_all);
+   E_FREE(_e_intl_orig_lang);
 
    E_FREE(_e_intl_orig_gtk_im_module);
    E_FREE(_e_intl_orig_qt_im_module);
@@ -142,7 +142,7 @@ e_intl_language_set(const char *lang)
     */
    if (!lang)
      {
-       e_util_env_set("LC_ALL", _e_intl_orig_lc_all);
+       e_util_env_set("LANG", _e_intl_orig_lang);
 
        if (!lang) lang = getenv("LC_ALL");
        if (!lang) lang = getenv("LANG");
@@ -186,7 +186,7 @@ e_intl_language_set(const char *lang)
        /* Only set env vars is a non NULL locale was passed */
        if (set_envars)
          {
-            e_util_env_set("LC_ALL", _e_intl_language);
+            e_util_env_set("LANG", _e_intl_language);
          }
 
        setlocale(LC_ALL, _e_intl_language);