Skip to content

Commit

Permalink
virtual: Fix memory leak when selecting mailboxes with '-' or /metadata
Browse files Browse the repository at this point in the history
  • Loading branch information
sirainen committed Aug 22, 2018
1 parent 74c7939 commit beb958d
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion src/plugins/virtual/virtual-config.c
Expand Up @@ -392,7 +392,7 @@ static int virtual_config_expand_wildcards(struct virtual_parse_context *ctx,
struct mail_user *user = ctx->mbox->storage->storage.user;
ARRAY_TYPE(virtual_backend_box) wildcard_boxes, neg_boxes, metadata_boxes;
struct mailbox_list_iterate_context *iter;
struct virtual_backend_box *const *wboxes;
struct virtual_backend_box *const *wboxes, *const *boxp;
const char **patterns;
const struct mailbox_info *info;
unsigned int i, j, count;
Expand Down Expand Up @@ -440,6 +440,10 @@ static int virtual_config_expand_wildcards(struct virtual_parse_context *ctx,
}
for (i = 0; i < count; i++)
mail_search_args_unref(&wboxes[i]->search_args);
array_foreach(&neg_boxes, boxp)
mail_search_args_unref(&(*boxp)->search_args);
array_foreach(&metadata_boxes, boxp)
mail_search_args_unref(&(*boxp)->search_args);
if (mailbox_list_iter_deinit(&iter) < 0) {
*error_r = mailbox_list_get_last_internal_error(user->namespaces->list, NULL);
return -1;
Expand Down

0 comments on commit beb958d

Please sign in to comment.