From 1200f51e90901eb120484ae3bb0a3912efb7bff4 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 5 Apr 2010 15:20:46 -0500 Subject: Switching to only use the g_dgettext version if the locale_string function doesn't change the string from the normal lookup (and we have a domain to look in). --- libindicator/indicator-desktop-shortcuts.c | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'libindicator') diff --git a/libindicator/indicator-desktop-shortcuts.c b/libindicator/indicator-desktop-shortcuts.c index 161350b..cfd8eef 100644 --- a/libindicator/indicator-desktop-shortcuts.c +++ b/libindicator/indicator-desktop-shortcuts.c @@ -438,22 +438,25 @@ indicator_desktop_shortcuts_nick_get_name (IndicatorDesktopShortcuts * ids, cons } gchar * name = NULL; - if (priv->domain == NULL) { - name = g_key_file_get_locale_string(priv->keyfile, + gchar * keyvalue = g_key_file_get_string(priv->keyfile, + groupheader, + G_KEY_FILE_DESKTOP_KEY_NAME, + NULL); + gchar * localeval = g_key_file_get_locale_string(priv->keyfile, groupheader, G_KEY_FILE_DESKTOP_KEY_NAME, NULL, NULL); + g_free(groupheader); + + if (priv->domain != NULL && g_strcmp0(keyvalue, localeval) == 0) { + name = g_strdup(g_dgettext(priv->domain, keyvalue)); + g_free(localeval); } else { - gchar * tempname = g_key_file_get_string(priv->keyfile, - groupheader, - G_KEY_FILE_DESKTOP_KEY_NAME, - NULL); - name = g_strdup(g_dgettext(priv->domain, tempname)); - g_free(tempname); + name = localeval; } - g_free(groupheader); + g_free(keyvalue); return name; } -- cgit v1.2.3