diff options
author | Not Zed <NotZed@Ximian.com> | 2004-09-28 12:53:28 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2004-09-28 12:53:28 +0800 |
commit | 665df59a88360115e410d46f50ebe61dead6b151 (patch) | |
tree | ecf68dc67404f06d4de946371b6e0f36ce23016b /camel/camel-vee-store.c | |
parent | f3c3a422abf537dcfc24030433e9556d34d71492 (diff) | |
download | gsoc2013-evolution-665df59a88360115e410d46f50ebe61dead6b151.tar gsoc2013-evolution-665df59a88360115e410d46f50ebe61dead6b151.tar.gz gsoc2013-evolution-665df59a88360115e410d46f50ebe61dead6b151.tar.bz2 gsoc2013-evolution-665df59a88360115e410d46f50ebe61dead6b151.tar.lz gsoc2013-evolution-665df59a88360115e410d46f50ebe61dead6b151.tar.xz gsoc2013-evolution-665df59a88360115e410d46f50ebe61dead6b151.tar.zst gsoc2013-evolution-665df59a88360115e410d46f50ebe61dead6b151.zip |
free the unmatched uid values as well.
2004-09-24 Not Zed <NotZed@Ximian.com>
* camel-vee-store.c (camel_vee_store_finalise): free the unmatched
uid values as well.
* camel-vee-folder.c (vee_folder_remove_folder): lock main folder
summary lock before doing the unmatched stuff, so the order is
right.
2004-08-25 Ed Catmur <ed@catmur.co.uk>
** See bug #63881.
* camel-vee-store.c:
* camel-vee-folder.c: move the unmatched
folder onto the camel-vee-store object. Removede the global
unmatched folder and associated locks/etc, fixed all the code up
to work with the new unmatched folder, if present.
svn path=/trunk/; revision=27408
Diffstat (limited to 'camel/camel-vee-store.c')
-rw-r--r-- | camel/camel-vee-store.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/camel/camel-vee-store.c b/camel/camel-vee-store.c index 770a0239c1..90c6ee1f95 100644 --- a/camel/camel-vee-store.c +++ b/camel/camel-vee-store.c @@ -93,12 +93,27 @@ camel_vee_store_init (CamelVeeStore *obj) /* we dont want a vtrash/vjunk on this one */ store->flags &= ~(CAMEL_STORE_VTRASH | CAMEL_STORE_VJUNK); + + /* Set up unmatched folder */ + obj->unmatched_uids = g_hash_table_new (g_str_hash, g_str_equal); + obj->folder_unmatched = (CamelVeeFolder *)camel_object_new (camel_vee_folder_get_type ()); + camel_vee_folder_construct (obj->folder_unmatched, store, CAMEL_UNMATCHED_NAME, CAMEL_STORE_FOLDER_PRIVATE); +} + +static void +cvs_free_unmatched(void *key, void *value, void *data) +{ + g_free(key); } static void camel_vee_store_finalise (CamelObject *obj) { - ; + CamelVeeStore *vstore = (CamelVeeStore *)obj; + + g_hash_table_foreach(vstore->unmatched_uids, cvs_free_unmatched, NULL); + g_hash_table_destroy(vstore->unmatched_uids); + camel_object_unref(vstore->folder_unmatched); } /** |