diff options
-rw-r--r-- | libempathy/empathy-account-settings.c | 7 | ||||
-rw-r--r-- | libempathy/empathy-account-settings.h | 4 | ||||
-rw-r--r-- | src/empathy-account-assistant.c | 10 |
3 files changed, 18 insertions, 3 deletions
diff --git a/libempathy/empathy-account-settings.c b/libempathy/empathy-account-settings.c index 2a9afabb3..fccc58e33 100644 --- a/libempathy/empathy-account-settings.c +++ b/libempathy/empathy-account-settings.c @@ -756,6 +756,13 @@ empathy_account_settings_get_tp_param (EmpathyAccountSettings *settings, return NULL; } +gboolean +empathy_account_settings_have_tp_param (EmpathyAccountSettings *settings, + const gchar *param) +{ + return (empathy_account_settings_get_tp_param (settings, param) != NULL); +} + static void account_settings_remove_from_unset (EmpathyAccountSettings *settings, const gchar *param) diff --git a/libempathy/empathy-account-settings.h b/libempathy/empathy-account-settings.h index 3a2264e28..e02854ada 100644 --- a/libempathy/empathy-account-settings.h +++ b/libempathy/empathy-account-settings.h @@ -83,6 +83,10 @@ gboolean empathy_account_settings_has_account ( TpConnectionManagerParam *empathy_account_settings_get_tp_params ( EmpathyAccountSettings *settings); +gboolean empathy_account_settings_have_tp_param ( + EmpathyAccountSettings *settings, + const gchar *param); + void empathy_account_settings_unset (EmpathyAccountSettings *settings, const gchar *param); diff --git a/src/empathy-account-assistant.c b/src/empathy-account-assistant.c index 4beda4b75..e84fa650c 100644 --- a/src/empathy-account-assistant.c +++ b/src/empathy-account-assistant.c @@ -422,7 +422,7 @@ account_assistant_protocol_changed_cb (GtkComboBox *chooser, "talkx.l.google.com:80", NULL}; - gchar *extra_identities[] = { + gchar *extra_certificate_identities[] = { "talk.google.com", NULL}; @@ -432,8 +432,12 @@ account_assistant_protocol_changed_cb (GtkComboBox *chooser, empathy_account_settings_set_strv (settings, "fallback-servers", fallback_servers); - empathy_account_settings_set_strv (settings, "extra-identities", - extra_identities); + if (empathy_account_settings_have_tp_param (settings, + "extra-certificate-identities")) + { + empathy_account_settings_set_strv (settings, + "extra-certificate-identities", extra_certificate_identities); + } } else if (is_facebook) { |