aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStef Walter <stefw@collabora.co.uk>2011-03-21 17:58:31 +0800
committerStef Walter <stefw@collabora.co.uk>2011-03-22 22:30:22 +0800
commit6c943efd9aabd9d0d8674c3c58d2e58efdb412f6 (patch)
treed9a80aa2b7a4ac5785136585824d518e77c86edc
parent6cd0e1c0916e69eb15192c6bdbf1b5d7ee599f5a (diff)
downloadgsoc2013-empathy-6c943efd9aabd9d0d8674c3c58d2e58efdb412f6.tar
gsoc2013-empathy-6c943efd9aabd9d0d8674c3c58d2e58efdb412f6.tar.gz
gsoc2013-empathy-6c943efd9aabd9d0d8674c3c58d2e58efdb412f6.tar.bz2
gsoc2013-empathy-6c943efd9aabd9d0d8674c3c58d2e58efdb412f6.tar.lz
gsoc2013-empathy-6c943efd9aabd9d0d8674c3c58d2e58efdb412f6.tar.xz
gsoc2013-empathy-6c943efd9aabd9d0d8674c3c58d2e58efdb412f6.tar.zst
gsoc2013-empathy-6c943efd9aabd9d0d8674c3c58d2e58efdb412f6.zip
Only add the 'extra-certificate-identities' parameter if gabble supports it.
-rw-r--r--libempathy-gtk/empathy-protocol-chooser.c8
-rw-r--r--libempathy/empathy-account-settings.c7
-rw-r--r--libempathy/empathy-account-settings.h4
3 files changed, 17 insertions, 2 deletions
diff --git a/libempathy-gtk/empathy-protocol-chooser.c b/libempathy-gtk/empathy-protocol-chooser.c
index 9bbab1c8e..b2e4314de 100644
--- a/libempathy-gtk/empathy-protocol-chooser.c
+++ b/libempathy-gtk/empathy-protocol-chooser.c
@@ -604,8 +604,12 @@ empathy_protocol_chooser_create_account_settings (EmpathyProtocolChooser *self)
empathy_account_settings_set_strv (settings, "fallback-servers",
fallback_servers);
- empathy_account_settings_set_strv (settings,
- "extra-certificate-identities", extra_certificate_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 (!tp_strdiff (service, "facebook"))
{
diff --git a/libempathy/empathy-account-settings.c b/libempathy/empathy-account-settings.c
index 0db28d7a3..4005d2790 100644
--- a/libempathy/empathy-account-settings.c
+++ b/libempathy/empathy-account-settings.c
@@ -798,6 +798,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 fb2b8f4c6..25f1d3155 100644
--- a/libempathy/empathy-account-settings.h
+++ b/libempathy/empathy-account-settings.h
@@ -87,6 +87,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);