aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--filter/ChangeLog8
-rw-r--r--filter/filter-driver.c11
2 files changed, 15 insertions, 4 deletions
diff --git a/filter/ChangeLog b/filter/ChangeLog
index 8d2ed5f462..a77c234aac 100644
--- a/filter/ChangeLog
+++ b/filter/ChangeLog
@@ -1,3 +1,11 @@
+2001-01-13 Jeffrey Stedfast <fejj@ximian.com>
+
+ * filter-driver.c (do_copy): Moved p->copied to the inner part of
+ the loop so that in the case of a folder not existing, it doesn't
+ think that the message was already copied to some place and thus
+ not save it to the Inbox.
+ (do_move): Same.
+
2001-01-10 Jeffrey Stedfast <fejj@helixcode.com>
* filtertypes.xml: Changed Priority to Score.
diff --git a/filter/filter-driver.c b/filter/filter-driver.c
index 502fe7ebcc..2c5c25c780 100644
--- a/filter/filter-driver.c
+++ b/filter/filter-driver.c
@@ -337,7 +337,7 @@ do_copy (struct _ESExp *f, int argc, struct _ESExpResult **argv, FilterDriver *d
int i;
d(fprintf (stderr, "copying message...\n"));
- p->copied = TRUE;
+
for (i = 0; i < argc; i++) {
if (argv[i]->type == ESEXP_RES_STRING) {
/* open folders we intent to copy to */
@@ -349,6 +349,7 @@ do_copy (struct _ESExp *f, int argc, struct _ESExpResult **argv, FilterDriver *d
if (!outbox)
continue;
+ p->copied = TRUE;
camel_folder_append_message (outbox, p->message, p->info, p->ex);
service_url = camel_service_get_url (CAMEL_SERVICE (camel_folder_get_parent_store (outbox)));
@@ -367,8 +368,7 @@ do_move (struct _ESExp *f, int argc, struct _ESExpResult **argv, FilterDriver *d
int i;
d(fprintf (stderr, "moving message...\n"));
- p->copied = TRUE;
- p->deleted = TRUE; /* a 'move' is a copy & delete */
+
for (i = 0; i < argc; i++) {
if (argv[i]->type == ESEXP_RES_STRING) {
/* open folders we intent to move to */
@@ -379,7 +379,10 @@ do_move (struct _ESExp *f, int argc, struct _ESExpResult **argv, FilterDriver *d
outbox = open_folder (driver, folder);
if (!outbox)
continue;
-
+
+ p->copied = TRUE;
+ p->deleted = TRUE; /* a 'move' is a copy & delete */
+
camel_folder_append_message (outbox, p->message, p->info, p->ex);
service_url = camel_service_get_url (CAMEL_SERVICE (camel_folder_get_parent_store (outbox)));