static Ecore_Exe *_e_intl_input_method_exec = NULL;
static Ecore_Event_Handler *_e_intl_exit_handler = NULL;
-static char *_e_intl_orig_lang = NULL;
+static char *_e_intl_orig_lc_all = NULL;
static char *_e_intl_language = NULL;
static char *_e_intl_language_alias = NULL;
e_intl_data_init();
- if ((s = getenv("LANG"))) _e_intl_orig_lang = strdup(s);
+ if ((s = getenv("LC_ALL"))) _e_intl_orig_lc_all = 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);
e_intl_shutdown(void)
{
E_FREE(_e_intl_language);
- E_FREE(_e_intl_orig_lang);
+ E_FREE(_e_intl_orig_lc_all);
E_FREE(_e_intl_orig_gtk_im_module);
E_FREE(_e_intl_orig_qt_im_module);
*/
if (!lang)
{
- e_util_env_set("LANG", _e_intl_orig_lang);
+ e_util_env_set("LC_ALL", _e_intl_orig_lc_all);
if (!lang) lang = getenv("LC_ALL");
if (!lang) lang = getenv("LANG");
/* Only set env vars is a non NULL locale was passed */
if (set_envars)
{
- e_util_env_set("LANG", _e_intl_language);
+ e_util_env_set("LC_ALL", _e_intl_language);
}
setlocale(LC_ALL, _e_intl_language);