From 3188bb8c2f961885c6bf89fa8ff7edbed75dfd40 Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Fri, 28 Jun 2002 18:41:06 +0000 Subject: Fixes bug #27055. 2002-06-28 Jeffrey Stedfast Fixes bug #27055. * mail-accounts.c (account_add_finished): Unref the main accounts widget. (account_add_clicked): Ref the main accounts widget. (account_edit_finished): Unref the main accounts widget. (account_edit_clicked): Ref the main accounts widget. svn path=/trunk/; revision=17323 --- mail/ChangeLog | 9 +++++++++ mail/mail-accounts.c | 14 ++++++++++++-- mail/mail-callbacks.c | 2 +- 3 files changed, 22 insertions(+), 3 deletions(-) (limited to 'mail') diff --git a/mail/ChangeLog b/mail/ChangeLog index 195ff4ac99..ef8fd20b02 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,12 @@ +2002-06-28 Jeffrey Stedfast + + Fixes bug #27055. + + * mail-accounts.c (account_add_finished): Unref the main accounts widget. + (account_add_clicked): Ref the main accounts widget. + (account_edit_finished): Unref the main accounts widget. + (account_edit_clicked): Ref the main accounts widget. + 2002-06-27 Jeffrey Stedfast * component-factory.c (storage_remove_folder): Recursively delete diff --git a/mail/mail-accounts.c b/mail/mail-accounts.c index 7805e47715..18b9e6e925 100644 --- a/mail/mail-accounts.c +++ b/mail/mail-accounts.c @@ -131,7 +131,11 @@ account_add_finished (GtkWidget *widget, gpointer user_data) MailAccountsTab *prefs = user_data; prefs->druid = NULL; - mail_accounts_load (prefs); + + if (!GTK_OBJECT_DESTROYED (prefs)) + mail_accounts_load (prefs); + + gtk_object_unref ((GtkObject *) prefs); } static void @@ -145,6 +149,7 @@ account_add_clicked (GtkButton *button, gpointer user_data) GTK_SIGNAL_FUNC (account_add_finished), prefs); gtk_widget_show (prefs->druid); + gtk_object_ref ((GtkObject *) prefs); } else { gdk_window_raise (prefs->druid->window); } @@ -156,7 +161,11 @@ account_edit_finished (GtkWidget *widget, gpointer user_data) MailAccountsTab *prefs = user_data; prefs->editor = NULL; - mail_accounts_load (prefs); + + if (!GTK_OBJECT_DESTROYED (prefs)) + mail_accounts_load (prefs); + + gtk_object_unref ((GtkObject *) prefs); } static void @@ -187,6 +196,7 @@ account_edit_clicked (GtkButton *button, gpointer user_data) GTK_SIGNAL_FUNC (account_edit_finished), prefs); gtk_widget_show (prefs->editor); + gtk_object_ref ((GtkObject *) prefs); } } else { gdk_window_raise (prefs->editor->window); diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c index eb85f92402..d58fd7ebfd 100644 --- a/mail/mail-callbacks.c +++ b/mail/mail-callbacks.c @@ -75,8 +75,8 @@ struct post_send_data { CamelFolder *folder; - gchar *uid; guint32 flags, set; + char *uid; }; static void -- cgit v1.2.3