aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/dialogs
diff options
context:
space:
mode:
authorSuman Manjunath <msuman@src.gnome.org>2008-01-14 16:34:15 +0800
committerSuman Manjunath <msuman@src.gnome.org>2008-01-14 16:34:15 +0800
commitd9d36a77c6d319f61d5b18db370141854cd4c617 (patch)
tree056ab0c27b8f0cf2dd028f1934edc43ae84d3455 /calendar/gui/dialogs
parent25df9d140bd21058e5f9b17854ef6699a69b4b24 (diff)
downloadgsoc2013-evolution-d9d36a77c6d319f61d5b18db370141854cd4c617.tar.gz
gsoc2013-evolution-d9d36a77c6d319f61d5b18db370141854cd4c617.tar.zst
gsoc2013-evolution-d9d36a77c6d319f61d5b18db370141854cd4c617.zip
Fix for bug #339620 (Disconnect signal handlers in the destroy_handler of recurrence-page dialog)
svn path=/trunk/; revision=34811
Diffstat (limited to 'calendar/gui/dialogs')
-rw-r--r--calendar/gui/dialogs/recurrence-page.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/calendar/gui/dialogs/recurrence-page.c b/calendar/gui/dialogs/recurrence-page.c
index c86137a5a5..485ac95ec0 100644
--- a/calendar/gui/dialogs/recurrence-page.c
+++ b/calendar/gui/dialogs/recurrence-page.c
@@ -207,6 +207,8 @@ static gboolean recurrence_page_fill_widgets (CompEditorPage *page, ECalComponen
static gboolean recurrence_page_fill_component (CompEditorPage *page, ECalComponent *comp);
static void recurrence_page_set_dates (CompEditorPage *page, CompEditorPageDates *dates);
static void preview_date_range_changed_cb (ECalendarItem *item, gpointer data);
+static void interval_selection_done_cb (GtkOptionMenu *menu, gpointer data);
+static void ending_selection_done_cb (GtkOptionMenu *menu, gpointer data);
static void field_changed (RecurrencePage *apage);
static void make_ending_count_special (RecurrencePage *rpage);
@@ -285,6 +287,11 @@ recurrence_page_finalize (GObject *object)
g_signal_handlers_disconnect_matched (E_CALENDAR (priv->preview_calendar)->calitem, G_SIGNAL_MATCH_FUNC,
0, 0, NULL, preview_date_range_changed_cb, NULL);
+ g_signal_handlers_disconnect_by_func (GTK_OPTION_MENU (priv->interval_unit),
+ G_CALLBACK (interval_selection_done_cb), rpage);
+ g_signal_handlers_disconnect_by_func (GTK_OPTION_MENU (priv->ending_menu),
+ G_CALLBACK (ending_selection_done_cb), rpage);
+
if (priv->main)
g_object_unref (priv->main);