aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-config-druid.c
diff options
context:
space:
mode:
authorIain Holmes <iain@src.gnome.org>2001-08-28 04:19:49 +0800
committerIain Holmes <iain@src.gnome.org>2001-08-28 04:19:49 +0800
commita6d46c33f31037bd8eb678368e88653786484532 (patch)
tree7f1ddcf808f621f72690acc8614058e5197b834b /mail/mail-config-druid.c
parent4cf66ac5c7915a982c34faade300b0986a87f35a (diff)
downloadgsoc2013-evolution-a6d46c33f31037bd8eb678368e88653786484532.tar
gsoc2013-evolution-a6d46c33f31037bd8eb678368e88653786484532.tar.gz
gsoc2013-evolution-a6d46c33f31037bd8eb678368e88653786484532.tar.bz2
gsoc2013-evolution-a6d46c33f31037bd8eb678368e88653786484532.tar.lz
gsoc2013-evolution-a6d46c33f31037bd8eb678368e88653786484532.tar.xz
gsoc2013-evolution-a6d46c33f31037bd8eb678368e88653786484532.tar.zst
gsoc2013-evolution-a6d46c33f31037bd8eb678368e88653786484532.zip
Destroy lists and hashes when needed, so that old data isn't left behind.
svn path=/trunk/; revision=12488
Diffstat (limited to 'mail/mail-config-druid.c')
-rw-r--r--mail/mail-config-druid.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/mail/mail-config-druid.c b/mail/mail-config-druid.c
index 02834761c5..4fe0a88b21 100644
--- a/mail/mail-config-druid.c
+++ b/mail/mail-config-druid.c
@@ -177,7 +177,17 @@ druid_cancel (GnomeDruid *druid, gpointer user_data)
GNOME_Evolution_Wizard_notifyAction (wiz, 0, GNOME_Evolution_Wizard_CANCEL, &ev);
CORBA_exception_free (&ev);
-
+
+ if (page_list != NULL) {
+ g_list_free (page_list);
+ page_list = NULL;
+ }
+
+ if (page_hash != NULL) {
+ g_hash_table_destroy (page_hash);
+ page_hash = NULL;
+ }
+
gtk_widget_destroy (GTK_WIDGET (config));
}
@@ -187,6 +197,16 @@ druid_finish (GnomeDruidPage *page, gpointer arg1, gpointer user_data)
MailConfigDruid *druid = user_data;
gtk_object_set_data (GTK_OBJECT (account_wizard), "account-data", NULL);
+ if (page_list != NULL) {
+ g_list_free (page_list);
+ page_list = NULL;
+ }
+
+ if (page_hash != NULL) {
+ g_hash_table_destroy (page_hash);
+ page_hash = NULL;
+ }
+
gtk_widget_destroy (GTK_WIDGET (druid));
}