Skip to content

Commit

Permalink
session: always pass down user saved language
Browse files Browse the repository at this point in the history
  • Loading branch information
felipeerias authored and Mario Sanchez Prada committed Apr 3, 2017
1 parent 05cc4cf commit 2e47801
Showing 1 changed file with 9 additions and 16 deletions.
25 changes: 9 additions & 16 deletions daemon/gdm-session.c
Expand Up @@ -906,8 +906,7 @@ worker_on_saved_language_name_read (GdmDBusWorker *worker,
{
GdmSession *self = conversation->session;

if (strlen (language_name) > 0 &&
strcmp (language_name, get_default_language_name (self)) != 0) {
if (strlen (language_name) > 0) {
g_free (self->priv->saved_language);
self->priv->saved_language = g_strdup (language_name);

Expand Down Expand Up @@ -2505,14 +2504,21 @@ set_up_session_language (GdmSession *self)
value);
}
g_strfreev (environment);

// If a language has been set for the current user (through act_user_set_language),
// it takes precedence over the value coming from the environment.
// This fixes a bug where the system language was overriding the user's preference.
if (self->priv->saved_language && strlen (self->priv->saved_language) > 0) {
g_debug ("GdmSession: using saved language %s", self->priv->saved_language);
gdm_session_set_environment_variable (self, "LANG", self->priv->saved_language);
}
}

static void
set_up_session_environment (GdmSession *self)
{
GdmSessionDisplayMode display_mode;
gchar *desktop_names;
char *locale;

if (self->priv->selected_program == NULL) {
gdm_session_set_environment_variable (self,
Expand All @@ -2533,19 +2539,6 @@ set_up_session_environment (GdmSession *self)

set_up_session_language (self);

locale = g_strdup (get_default_language_name (self));

if (locale != NULL && locale[0] != '\0') {
gdm_session_set_environment_variable (self,
"LANG",
locale);
gdm_session_set_environment_variable (self,
"GDM_LANG",
locale);
}

g_free (locale);

display_mode = gdm_session_get_display_mode (self);
if (display_mode == GDM_SESSION_DISPLAY_MODE_REUSE_VT) {
gdm_session_set_environment_variable (self,
Expand Down

0 comments on commit 2e47801

Please sign in to comment.