diff options
-rw-r--r-- | calendar/ChangeLog | 7 | ||||
-rw-r--r-- | calendar/gui/dialogs/recurrence-page.c | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 81e46340e6..b556e9609d 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,10 @@ +2008-01-14 Suman Manjunath <msuman@novell.com> + + ** Fix for bug #339620 + + * gui/dialogs/recurrence-page.c: (recurrence_page_finalize): Disconnect + signal handlers on destroy. + 2008-01-14 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> ** Fix for bug #264404 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); |