aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2011-12-14 02:10:30 +0800
committerMatthew Barnes <mbarnes@redhat.com>2011-12-14 02:10:30 +0800
commit63404e5dc1d21c07abbaa29d0223695d479523a0 (patch)
tree8352682c641ccc625c5b9cd4d736e3f8a29769a3 /mail
parent034accdf3ba5426db5cab0a6082c7628324e6720 (diff)
downloadgsoc2013-evolution-63404e5dc1d21c07abbaa29d0223695d479523a0.tar.gz
gsoc2013-evolution-63404e5dc1d21c07abbaa29d0223695d479523a0.tar.zst
gsoc2013-evolution-63404e5dc1d21c07abbaa29d0223695d479523a0.zip
MailFolderCache: Fix a double-free on unsubscribe.
The 'folders' hash table has a GDestroyNotify callback now, but we were still freeing the folder_info struct explicitly.
Diffstat (limited to 'mail')
-rw-r--r--mail/mail-folder-cache.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c
index 51a4b474df..eb046c5406 100644
--- a/mail/mail-folder-cache.c
+++ b/mail/mail-folder-cache.c
@@ -630,9 +630,8 @@ store_folder_unsubscribed_cb (CamelStore *store,
if (si) {
mfi = g_hash_table_lookup (si->folders, info->full_name);
if (mfi) {
- g_hash_table_remove (si->folders, mfi->full_name);
unset_folder_info (cache, mfi, TRUE, TRUE);
- free_folder_info (mfi);
+ g_hash_table_remove (si->folders, mfi->full_name);
}
}
g_mutex_unlock (cache->priv->stores_mutex);