diff options
author | Suman Manjunath <msuman@src.gnome.org> | 2008-01-14 16:34:15 +0800 |
---|---|---|
committer | Suman Manjunath <msuman@src.gnome.org> | 2008-01-14 16:34:15 +0800 |
commit | d9d36a77c6d319f61d5b18db370141854cd4c617 (patch) | |
tree | 056ab0c27b8f0cf2dd028f1934edc43ae84d3455 /calendar | |
parent | 25df9d140bd21058e5f9b17854ef6699a69b4b24 (diff) | |
download | gsoc2013-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')
-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); |