Mercurial > dovecot > original-hg > dovecot-1.2
diff src/lib-storage/mail-search.h @ 4903:204d7edc7cdc HEAD
Added context parameter type safety checks for most callback APIs.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Fri, 15 Dec 2006 18:55:29 +0200 |
parents | 55df57c028d4 |
children | 0c3c948412c5 |
line wrap: on
line diff
--- a/src/lib-storage/mail-search.h Wed Dec 13 15:49:46 2006 +0200 +++ b/src/lib-storage/mail-search.h Fri Dec 15 18:55:29 2006 +0200 @@ -68,8 +68,8 @@ (res) == -1 ? -1 : !(res); \ } STMT_END -typedef void (*mail_search_foreach_callback_t)(struct mail_search_arg *arg, - void *context); +typedef void mail_search_foreach_callback_t(struct mail_search_arg *arg, + void *context); /* Reset the results in search arguments. match_always is reset only if full_reset is TRUE. */ @@ -78,8 +78,12 @@ /* goes through arguments in list that don't have a result yet. Returns 1 = search matched, 0 = search unmatched, -1 = don't know yet */ int mail_search_args_foreach(struct mail_search_arg *args, - mail_search_foreach_callback_t callback, + mail_search_foreach_callback_t *callback, void *context); +#define mail_search_args_foreach(args, callback, context) \ + CONTEXT_CALLBACK2(mail_search_args_foreach, \ + mail_search_foreach_callback_t, \ + callback, context, args) /* Fills have_headers and have_body based on if such search argument exists that needs to be checked. Returns the headers that we're searching for, or