diff options
-rw-r--r-- | mail/ChangeLog | 6 | ||||
-rw-r--r-- | mail/mail-ops.c | 8 |
2 files changed, 14 insertions, 0 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 766fa3787c..d82f757481 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,9 @@ +2000-09-27 Jeffrey Stedfast <fejj@helixcode.com> + + * mail-ops.c (do_filter_ondemand): If the message has been + deleted, don't try filtering it - skip to the next message. + Fixes bugzilla bug #639. + 2000-09-25 Jeffrey Stedfast <fejj@helixcode.com> * folder-browser-factory.c: Shuffling (un)select all menu items to diff --git a/mail/mail-ops.c b/mail/mail-ops.c index a2fd820dfa..d7edad424b 100644 --- a/mail/mail-ops.c +++ b/mail/mail-ops.c @@ -4,6 +4,7 @@ /* * Author : * Dan Winship <danw@helixcode.com> + * Jeffrey Stedfast <fejj@helixcode.com> * Peter Williams <peterw@helixcode.com> * * Copyright 2000 Helix Code, Inc. (http://www.helixcode.com) @@ -346,6 +347,13 @@ do_filter_ondemand (gpointer in_data, gpointer op_data, CamelException *ex) free_info = TRUE; } + /* check if this message is marked for deletion */ + if (info->flags & CAMEL_MESSAGE_DELETED) { + /* don't filter messages which have been marked as deleted */ + camel_object_unref (CAMEL_OBJECT (message)); + continue; + } + filtered = filter_driver_run (driver, message, info, NULL, FILTER_SOURCE_DEMAND, ex); |