forked from enlightenment/enlightenment
Try to really first the NULL locale issue.
SVN revision: 26161
This commit is contained in:
parent
9aac21ab94
commit
db63f3d8fd
|
@ -760,7 +760,7 @@ _region_hash_free_cb(Evas_Hash *hash, const char *key, void *data, void *fdata)
|
||||||
static int
|
static int
|
||||||
_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
if (cfdata->cur_language != NULL)
|
if (cfdata->cur_language)
|
||||||
{
|
{
|
||||||
e_config->language = evas_stringshare_add(cfdata->cur_language);
|
e_config->language = evas_stringshare_add(cfdata->cur_language);
|
||||||
e_intl_language_set(e_config->language);
|
e_intl_language_set(e_config->language);
|
||||||
|
@ -774,7 +774,7 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
static int
|
static int
|
||||||
_advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
_advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
if (cfdata->cur_language != NULL)
|
if (cfdata->cur_language)
|
||||||
{
|
{
|
||||||
e_config->language = evas_stringshare_add(cfdata->cur_language);
|
e_config->language = evas_stringshare_add(cfdata->cur_language);
|
||||||
e_intl_language_set(e_config->language);
|
e_intl_language_set(e_config->language);
|
||||||
|
@ -803,8 +803,15 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
||||||
e_widget_on_change_hook_set(ob, _ilist_basic_language_cb_change, cfdata);
|
e_widget_on_change_hook_set(ob, _ilist_basic_language_cb_change, cfdata);
|
||||||
cfdata->gui.blang_list = ob;
|
cfdata->gui.blang_list = ob;
|
||||||
|
|
||||||
cur_sig_loc = e_intl_locale_canonic_get(cfdata->cur_language,
|
if (cfdata->cur_language)
|
||||||
E_INTL_LOC_LANG | E_INTL_LOC_REGION);
|
{
|
||||||
|
cur_sig_loc = e_intl_locale_canonic_get(cfdata->cur_language,
|
||||||
|
E_INTL_LOC_LANG | E_INTL_LOC_REGION);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
cur_sig_loc = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
while (basic_language_predefined_pairs[i].locale_key)
|
while (basic_language_predefined_pairs[i].locale_key)
|
||||||
|
@ -1176,22 +1183,31 @@ _intl_current_locale_setup(E_Config_Dialog_Data *cfdata)
|
||||||
char *modifier;
|
char *modifier;
|
||||||
|
|
||||||
E_FREE(cfdata->cur_lang);
|
E_FREE(cfdata->cur_lang);
|
||||||
cfdata->cur_lang = NULL;
|
|
||||||
E_FREE(cfdata->cur_reg);
|
E_FREE(cfdata->cur_reg);
|
||||||
cfdata->cur_reg = NULL;
|
|
||||||
E_FREE(cfdata->cur_cs);
|
E_FREE(cfdata->cur_cs);
|
||||||
cfdata->cur_cs = NULL;
|
|
||||||
E_FREE(cfdata->cur_mod);
|
E_FREE(cfdata->cur_mod);
|
||||||
|
|
||||||
|
cfdata->cur_lang = NULL;
|
||||||
|
cfdata->cur_reg = NULL;
|
||||||
|
cfdata->cur_cs = NULL;
|
||||||
cfdata->cur_mod = NULL;
|
cfdata->cur_mod = NULL;
|
||||||
|
|
||||||
language = e_intl_locale_canonic_get(cfdata->cur_language,
|
language = NULL;
|
||||||
E_INTL_LOC_LANG);
|
region = NULL;
|
||||||
region = e_intl_locale_canonic_get(cfdata->cur_language,
|
codeset = NULL;
|
||||||
E_INTL_LOC_REGION);
|
modifier = NULL;
|
||||||
codeset = e_intl_locale_canonic_get(cfdata->cur_language,
|
|
||||||
E_INTL_LOC_CODESET);
|
if (cfdata->cur_language)
|
||||||
modifier = e_intl_locale_canonic_get(cfdata->cur_language,
|
{
|
||||||
E_INTL_LOC_MODIFIER);
|
language = e_intl_locale_canonic_get(cfdata->cur_language,
|
||||||
|
E_INTL_LOC_LANG);
|
||||||
|
region = e_intl_locale_canonic_get(cfdata->cur_language,
|
||||||
|
E_INTL_LOC_REGION);
|
||||||
|
codeset = e_intl_locale_canonic_get(cfdata->cur_language,
|
||||||
|
E_INTL_LOC_CODESET);
|
||||||
|
modifier = e_intl_locale_canonic_get(cfdata->cur_language,
|
||||||
|
E_INTL_LOC_MODIFIER);
|
||||||
|
}
|
||||||
|
|
||||||
if (language)
|
if (language)
|
||||||
cfdata->cur_lang = strdup(language);
|
cfdata->cur_lang = strdup(language);
|
||||||
|
|
Loading…
Reference in New Issue