Mercurial > dovecot > core-2.2
changeset 11888:4513949b26b3
doveadm expunge: Check if search query is ok only once, not for each user.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 22 Jul 2010 18:25:09 +0100 |
parents | 05031751cc21 |
children | 45473cd0e3e6 |
files | src/doveadm/doveadm-mail-expunge.c |
diffstat | 1 files changed, 10 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/src/doveadm/doveadm-mail-expunge.c Thu Jul 22 17:06:16 2010 +0100 +++ b/src/doveadm/doveadm-mail-expunge.c Thu Jul 22 18:25:09 2010 +0100 @@ -171,16 +171,6 @@ struct doveadm_mail_list_iter *iter; const struct mailbox_info *info; - if (!expunge_search_args_is_mailbox_ok(ctx->search_args->args)) { - i_fatal("expunge: To avoid accidents, search query " - "must contain MAILBOX in all search branches"); - } - if (!expunge_search_args_is_msgset_ok(ctx->search_args->args)) { - i_fatal("expunge: To avoid accidents, each branch in " - "search query must contain something else " - "besides MAILBOX"); - } - iter = doveadm_mail_list_iter_init(user, ctx->search_args, iter_flags); while ((info = doveadm_mail_list_iter_next(iter)) != NULL) T_BEGIN { (void)cmd_expunge_box(info, ctx->search_args); @@ -196,6 +186,16 @@ ctx->search_args = doveadm_mail_build_search_args(args); mail_search_args_simplify(ctx->search_args); + + if (!expunge_search_args_is_mailbox_ok(ctx->search_args->args)) { + i_fatal("expunge: To avoid accidents, search query " + "must contain MAILBOX in all search branches"); + } + if (!expunge_search_args_is_msgset_ok(ctx->search_args->args)) { + i_fatal("expunge: To avoid accidents, each branch in " + "search query must contain something else " + "besides MAILBOX"); + } } static struct doveadm_mail_cmd_context *cmd_expunge_alloc(void)