aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-folder-cache.c
diff options
context:
space:
mode:
author9 <NotZed@Ximian.com>2001-10-29 13:06:28 +0800
committerMichael Zucci <zucchi@src.gnome.org>2001-10-29 13:06:28 +0800
commitfedf164cb97afe53eab3e3e4fcfb1765e89a61b5 (patch)
treeba5fe92df8f9a87e9d2f98e2c8f0a3b97af24410 /mail/mail-folder-cache.c
parentfa6339027dff8a7c5040c4b03bcf523a6fd9aa02 (diff)
downloadgsoc2013-evolution-fedf164cb97afe53eab3e3e4fcfb1765e89a61b5.tar.gz
gsoc2013-evolution-fedf164cb97afe53eab3e3e4fcfb1765e89a61b5.tar.zst
gsoc2013-evolution-fedf164cb97afe53eab3e3e4fcfb1765e89a61b5.zip
Copy the folder's full_name before trying to use it to rename.
2001-10-29 <NotZed@Ximian.com> * mail-vfolder.c (rule_changed): Copy the folder's full_name before trying to use it to rename. (vfolder_edit_rule): Set 'orig' to be a reference of the original rule. (edit_rule_clicked): Dont lookup orig by name, copy it over instead. * folder-browser.c (got_folder): oops, emit signal before unreffing object, incase we got killded during getting folder. (got_folder): Reset get_id. (folder_browser_new): Set get_id of the get_folder task. (folder_browser_init): Init get_id. (folder_browser_destroy): IF we have outstanding 'get folder' op, cancel it. svn path=/trunk/; revision=14323
Diffstat (limited to 'mail/mail-folder-cache.c')
-rw-r--r--mail/mail-folder-cache.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c
index 3ef602eda0..732a9dadb5 100644
--- a/mail/mail-folder-cache.c
+++ b/mail/mail-folder-cache.c
@@ -47,7 +47,7 @@
#include "mail-vfolder.h"
#include "mail-autofilter.h"
-#define d(x)
+#define d(x) x
/* note that many things are effectively serialised by having them run in
the main loop thread which they need to do because of corba/gtk calls */
@@ -161,13 +161,16 @@ real_flush_updates(void *o, void *event_data, void *data)
} else {
/* Its really a rename, but we have no way of telling the shell that, so remove it */
if (up->oldpath) {
- if (storage != NULL)
+ if (storage != NULL) {
+ printf("Removing old folder (rename?) '%s'\n", up->oldpath);
evolution_storage_removed_folder(storage, up->oldpath);
+ }
/* ELSE? Shell supposed to handle the local snot case */
}
/* We can tell the vfolder code though */
if (up->olduri && up->add) {
+ printf("renaming folder '%s' to '%s'\n", up->olduri, up->uri);
mail_vfolder_rename_uri(up->store, up->olduri, up->uri);
mail_filter_rename_uri(up->store, up->olduri, up->uri);
}
@@ -590,7 +593,7 @@ store_folder_renamed(CamelObject *o, void *event_data, void *data)
CamelRenameInfo *info = event_data;
struct _store_info *si;
- d(printf("Folder renamed?\n"));
+ d(printf("Folder renamed: oldbase = '%s' new->full = '%s'\n", info->old_base, info->new->full_name));
LOCK(info_lock);
si = g_hash_table_lookup(stores, store);