aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-filter-search.h
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2002-01-10 05:34:07 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2002-01-10 05:34:07 +0800
commit623a8d83ce693c5250d85e81c674f899234ce70d (patch)
treee89d79c525d04dde5d30deb2a0239ab18b0c125c /camel/camel-filter-search.h
parentec0820a46f72c19ac8ada64edc7ac1c4ecad90a0 (diff)
downloadgsoc2013-evolution-623a8d83ce693c5250d85e81c674f899234ce70d.tar.gz
gsoc2013-evolution-623a8d83ce693c5250d85e81c674f899234ce70d.tar.zst
gsoc2013-evolution-623a8d83ce693c5250d85e81c674f899234ce70d.zip
If the mbox file is a symlink, follow the symlink and get the One True
2002-01-09 Jeffrey Stedfast <fejj@ximian.com> * providers/local/camel-mbox-folder.c (camel_mbox_folder_new): If the mbox file is a symlink, follow the symlink and get the One True Path so that we can rewrite the mbox later without worrying about clobbering the symlink. 2002-01-08 Jeffrey Stedfast <fejj@ximian.com> * camel-filter-search.c (TODO): There are a few sexp callbacks that could be modified to use fms->info rather than using a message object (like date and possibly mlist stuff) but *only* if the date exists on the CamelMessageInfo object (since it may be blank except for message flags). (camel_filter_search_get_message): New internal convenience function to make sure that the FilterMessageSearch has loaded the message (and to load the message if this isn't the case). (check_header): Call camel_filter_search_get_message(). (header_exists): Same. (header_regex): Here too. (header_full_regex): And here. (body_contains): Again here. (body_regex): Here too. (get_sent_date): Here also. (get_received_date): Same. (get_source): Here if we need to. (camel_filter_search_match): Now takes a callback function/data pair for on-demand message loading so that we don't necessarily have to load the message if the defined filter rules don't require it. * camel-filter-driver.c (camel_filter_driver_filter_folder): Don't bother fetching the message here, let camel_filter_driver_filter_message() worry about this. (get_message_cb): New utility callback to fetch a message. (camel_filter_driver_filter_message): Only fetch the message if we absolutely need it to get a CamelMessageInfo. Instead of passing a message object to camel_filter_search_match(), pass get_message_cb and some user_data so that the matching code can fetch the message on demand. svn path=/trunk/; revision=15276
Diffstat (limited to 'camel/camel-filter-search.h')
-rw-r--r--camel/camel-filter-search.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/camel/camel-filter-search.h b/camel/camel-filter-search.h
index 1010603b2b..d54c3c03b7 100644
--- a/camel/camel-filter-search.h
+++ b/camel/camel-filter-search.h
@@ -40,8 +40,11 @@ enum {
CAMEL_SEARCH_MATCHED = 1,
};
-int camel_filter_search_match (CamelMimeMessage *message, CamelMessageInfo *info,
- const char *source, const char *expression, CamelException *ex);
+typedef CamelMimeMessage * (*CamelFilterSearchGetMessageFunc) (void *data, CamelException *ex);
+
+int camel_filter_search_match (CamelFilterSearchGetMessageFunc get_message, void *data,
+ CamelMessageInfo *info, const char *source,
+ const char *expression, CamelException *ex);
#ifdef __cplusplus
}