From 903a374abb0003caeca472d4902756680b74fd8c Mon Sep 17 00:00:00 2001 From: Ettore Perazzoli Date: Tue, 27 May 2003 19:39:44 +0000 Subject: New member gconf_value_changed_handler_id in ESummaryTasks. * e-summary-tasks.c: New member gconf_value_changed_handler_id in ESummaryTasks. (setup_gconf_client): Set it to the ID of the signal connection. * e-summary-calendar.c: New member gconf_value_changed_handler_id in ESummaryCalendar. (setup_gconf_client): Set it to the ID of the signal connection. * e-summary-tasks.c (generate_html): Remove unused variable. svn path=/trunk/; revision=21336 --- my-evolution/e-summary-calendar.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'my-evolution/e-summary-calendar.c') diff --git a/my-evolution/e-summary-calendar.c b/my-evolution/e-summary-calendar.c index e5d3765424..de7c1d7bc6 100644 --- a/my-evolution/e-summary-calendar.c +++ b/my-evolution/e-summary-calendar.c @@ -51,6 +51,7 @@ struct _ESummaryCalendar { char *default_uri; GConfClient *gconf_client; + int gconf_value_changed_handler_id; int cal_open_reload_timeout_id; int reload_count; @@ -570,8 +571,9 @@ setup_gconf_client (ESummary *summary) calendar->gconf_client = gconf_client_get_default (); - g_signal_connect (calendar->gconf_client, "value_changed", - G_CALLBACK (gconf_client_value_changed_cb), summary); + calendar->gconf_value_changed_handler_id + = g_signal_connect (calendar->gconf_client, "value_changed", + G_CALLBACK (gconf_client_value_changed_cb), summary); gconf_client_add_dir (calendar->gconf_client, "/apps/evolution/calendar", FALSE, NULL); gconf_client_add_dir (calendar->gconf_client, "/apps/evolution/shell/default_folders", FALSE, NULL); @@ -619,7 +621,10 @@ e_summary_calendar_free (ESummary *summary) g_object_unref (calendar->client); g_free (calendar->html); g_free (calendar->default_uri); - + + if (calendar->gconf_value_changed_handler_id != 0) + g_signal_handler_disconnect (calendar->gconf_client, + calendar->gconf_value_changed_handler_id); g_object_unref (calendar->gconf_client); g_free (calendar); -- cgit v1.2.3