aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2012-08-23 01:33:53 +0800
committerMilan Crha <mcrha@redhat.com>2012-08-23 01:34:49 +0800
commit0ee1a173d52a671b2c3c0656fda74e6015cfd225 (patch)
tree527c600c3af7133724389049594dbd48bcb8dcb4
parent552ef0516e693378c907ebaeebf43ffd060bc215 (diff)
downloadgsoc2013-evolution-0ee1a173d52a671b2c3c0656fda74e6015cfd225.tar.gz
gsoc2013-evolution-0ee1a173d52a671b2c3c0656fda74e6015cfd225.tar.zst
gsoc2013-evolution-0ee1a173d52a671b2c3c0656fda74e6015cfd225.zip
Disconnect signal handler from 'candidate' on its free
-rw-r--r--widgets/misc/e-source-config.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/widgets/misc/e-source-config.c b/widgets/misc/e-source-config.c
index 79d2e24f61..16c3c05f64 100644
--- a/widgets/misc/e-source-config.c
+++ b/widgets/misc/e-source-config.c
@@ -231,6 +231,10 @@ source_config_add_candidate (ESourceConfig *config,
static void
source_config_free_candidate (Candidate *candidate)
{
+ g_signal_handlers_disconnect_matched (
+ candidate->scratch_source, G_SIGNAL_MATCH_FUNC,
+ 0, 0, NULL, G_CALLBACK (e_source_config_check_complete), NULL);
+
g_object_unref (candidate->page);
g_object_unref (candidate->scratch_source);
g_object_unref (candidate->backend);