diff options
Diffstat (limited to 'camel/camel-vee-store.c')
-rw-r--r-- | camel/camel-vee-store.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/camel/camel-vee-store.c b/camel/camel-vee-store.c index 6bfee52da1..c630eb6851 100644 --- a/camel/camel-vee-store.c +++ b/camel/camel-vee-store.c @@ -357,6 +357,15 @@ vee_delete_folder(CamelStore *store, const char *folder_name, CamelException *ex folder = camel_object_bag_get(store->folders, folder_name); if (folder) { + char *statefile; + + camel_object_get(folder, NULL, CAMEL_OBJECT_STATE_FILE, &statefile, NULL); + if (statefile) { + unlink(statefile); + camel_object_free(folder, CAMEL_OBJECT_STATE_FILE, statefile); + camel_object_set(folder, NULL, CAMEL_OBJECT_STATE_FILE, NULL, NULL); + } + if ((((CamelVeeFolder *)folder)->flags & CAMEL_STORE_FOLDER_PRIVATE) == 0) { /* what about now-empty parents? ignore? */ change_folder(store, folder_name, CHANGE_DELETE, -1); |