diff options
author | Jeffrey Stedfast <fejj@ximian.com> | 2002-01-10 05:34:07 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2002-01-10 05:34:07 +0800 |
commit | 623a8d83ce693c5250d85e81c674f899234ce70d (patch) | |
tree | e89d79c525d04dde5d30deb2a0239ab18b0c125c /camel/camel-filter-search.h | |
parent | ec0820a46f72c19ac8ada64edc7ac1c4ecad90a0 (diff) | |
download | gsoc2013-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.h | 7 |
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 } |