aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanielle Madeley <danielle.madeley@collabora.co.uk>2011-04-29 08:53:30 +0800
committerDanielle Madeley <danielle.madeley@collabora.co.uk>2011-04-29 08:53:30 +0800
commit6273e70df550887b74e9855851d56999fdfdcde2 (patch)
treeb392fb3b2df2dc9c9f584f7f4dc6d5709195b6f5
parentf8a1fac65f1d53d7559e9e03893d7761627e1d43 (diff)
downloadgsoc2013-empathy-6273e70df550887b74e9855851d56999fdfdcde2.tar
gsoc2013-empathy-6273e70df550887b74e9855851d56999fdfdcde2.tar.gz
gsoc2013-empathy-6273e70df550887b74e9855851d56999fdfdcde2.tar.bz2
gsoc2013-empathy-6273e70df550887b74e9855851d56999fdfdcde2.tar.lz
gsoc2013-empathy-6273e70df550887b74e9855851d56999fdfdcde2.tar.xz
gsoc2013-empathy-6273e70df550887b74e9855851d56999fdfdcde2.tar.zst
gsoc2013-empathy-6273e70df550887b74e9855851d56999fdfdcde2.zip
Don't show the EULA twice
Previously the 'changed' signal was being connected multiple times, the more times it was connected, the more EULAs we would get. Disconnect any existing signals before reconnecting it.
-rw-r--r--src/empathy-account-assistant.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/empathy-account-assistant.c b/src/empathy-account-assistant.c
index f7753bdb3..e3fffc2ed 100644
--- a/src/empathy-account-assistant.c
+++ b/src/empathy-account-assistant.c
@@ -565,6 +565,11 @@ account_assistant_finish_enter_or_create_page (EmpathyAccountAssistant *self,
_("Enter the details for the new account"));
}
+ /* if someone clicked 'Back' this signal handler can be connected twice:
+ * disconnect any existing handlers */
+ g_signal_handlers_disconnect_by_func (priv->chooser,
+ account_assistant_protocol_changed_cb, self);
+
g_signal_connect (priv->chooser, "changed",
G_CALLBACK (account_assistant_protocol_changed_cb), self);