From e74803511e0c3fcdb4b50a24b519fb46f5de97fd Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Thu, 8 Mar 2001 20:01:42 +0000 Subject: These fixes make it so that the CamelStore does not actually hold a ref on 2001-03-08 Jeffrey Stedfast These fixes make it so that the CamelStore does not actually hold a ref on it's vTrash folder. The vTrash folder is now created ONLY when it is requested. This solves the problem of not being able to unref a Store and have it disconnect/finalize like we expect it to. * camel-store.c (init_trash): When we create the vtrash, add all previously opened folders to it and hook on to the finalize event so that we can then set the store->vtrash to NULL. (get_trash): If a vtrash folder for the store doesn't exist, init_trash() and then try. (construct): No longer need this. (camel_store_class_init): Don't override the construct method. (camel_store_finalize): We no longer hold a ref on the vtrash so don't unref it. svn path=/trunk/; revision=8595 --- camel/ChangeLog | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'camel/ChangeLog') diff --git a/camel/ChangeLog b/camel/ChangeLog index eb82e302af..bda570f9bc 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,19 @@ +2001-03-08 Jeffrey Stedfast + These fixes make it so that the CamelStore does not actually hold + a ref on it's vTrash folder. The vTrash folder is now created ONLY + when it is requested. This solves the problem of not being able to + unref a Store and have it disconnect/finalize like we expect it to. + + * camel-store.c (init_trash): When we create the vtrash, add all + previously opened folders to it and hook on to the finalize event + so that we can then set the store->vtrash to NULL. + (get_trash): If a vtrash folder for the store doesn't exist, + init_trash() and then try. + (construct): No longer need this. + (camel_store_class_init): Don't override the construct method. + (camel_store_finalize): We no longer hold a ref on the vtrash so + don't unref it. + 2001-03-07 Jeffrey Stedfast * providers/pop3/camel-pop3-store.c (init_trash): Implement. -- cgit