Mercurial > dovecot > original-hg > dovecot-1.2
changeset 9063:172cfd750a40 HEAD
SEARCH INTREAD: Crashfix when deinitializing.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Tue, 19 May 2009 14:48:08 -0400 |
parents | 694714d59cd9 |
children | d936c8e243dd |
files | src/lib-storage/mail-search.c |
diffstat | 1 files changed, 6 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/mail-search.c Tue May 19 13:37:31 2009 -0400 +++ b/src/lib-storage/mail-search.c Tue May 19 14:48:08 2009 -0400 @@ -150,13 +150,13 @@ break; case SEARCH_INTHREAD: i_assert(arg->value.search_args->refcount > 0); - arg->value.search_args->refcount--; - arg->value.search_args->box = NULL; if (args->refcount == 0 && arg->value.search_result != NULL) { mailbox_search_result_free( &arg->value.search_result); } + arg->value.search_args->refcount--; + arg->value.search_args->box = NULL; /* fall through */ case SEARCH_SUB: case SEARCH_OR: @@ -251,11 +251,14 @@ new_arg->type = arg->type; new_arg->not = arg->not; new_arg->match_always = arg->match_always; + new_arg->value.search_flags = arg->value.search_flags; switch (arg->type) { + case SEARCH_INTHREAD: + new_arg->value.thread_type = arg->value.thread_type; + /* fall through */ case SEARCH_OR: case SEARCH_SUB: - case SEARCH_INTHREAD: new_arg->value.subargs = mail_search_arg_dup(pool, arg->value.subargs); break;