diff --git a/src/modules/conf_intl/e_int_config_intl.c b/src/modules/conf_intl/e_int_config_intl.c
index 0cba726ef..df91b4099 100644
--- a/src/modules/conf_intl/e_int_config_intl.c
+++ b/src/modules/conf_intl/e_int_config_intl.c
@@ -724,7 +724,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
/* Add codeset to the region hash node if it exists */
if (locale_parts->codeset)
{
- const char * cs;
+ const char * cs = NULL;
const char * cs_trans;
cs_trans = _intl_charset_upper_get(locale_parts->codeset);
@@ -737,6 +737,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
/* Linear Search */
if (!eina_list_data_find(region_node->available_codesets, cs))
region_node->available_codesets = eina_list_append(region_node->available_codesets, cs);
+ else eina_stringshare_del(cs);
}
/* Add modifier to the region hash node if it exists */
@@ -869,15 +870,16 @@ _lc_check(void)
if (getenv("LC_NUMERIC")) strcat(buf, "LC_NUMERIC
");
if (getenv("LC_TIME")) strcat(buf, "LC_TIME
");
- e_util_dialog_show(_("Possible Locale problems"),
- _("You have some extra locale environment
"
- "variables set that may interfere with
"
- "correct display of your chosen language.
"
- "If you don't want these affected, use the
"
- "Enviornment variable settings to unset them.
"
- "The variables that may affect you are
"
- "as follows:
"
- "%s"), buf);
+ if (buf[0] != 0)
+ e_util_dialog_show(_("Possible Locale problems"),
+ _("You have some extra locale environment
"
+ "variables set that may interfere with
"
+ "correct display of your chosen language.
"
+ "If you don't want these affected, use the
"
+ "Enviornment variable settings to unset them.
"
+ "The variables that may affect you are
"
+ "as follows:
"
+ "%s"), buf);
}
static int