Mercurial > dovecot > core-2.2
changeset 16655:647ef2264398
doveadm: Minor memory leak fixes at deinit.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 05 Aug 2013 22:13:28 +0300 |
parents | f7dc5389ab0a |
children | 19719ea2cddb |
files | src/doveadm/doveadm-mail-mailbox-status.c src/doveadm/doveadm-mail-mailbox.c |
diffstat | 2 files changed, 17 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/doveadm/doveadm-mail-mailbox-status.c Mon Aug 05 21:47:11 2013 +0300 +++ b/src/doveadm/doveadm-mail-mailbox-status.c Mon Aug 05 22:13:28 2013 +0300 @@ -4,6 +4,7 @@ #include "str.h" #include "mail-namespace.h" #include "mail-storage.h" +#include "mail-search.h" #include "doveadm-print.h" #include "doveadm-mail.h" #include "doveadm-mailbox-list-iter.h" @@ -207,6 +208,13 @@ doveadm_print_header_simple("guid"); } +static void cmd_mailbox_status_deinit(struct doveadm_mail_cmd_context *_ctx) +{ + struct status_cmd_context *ctx = (struct status_cmd_context *)_ctx; + + mail_search_args_unref(&ctx->search_args); +} + static bool cmd_mailbox_status_parse_arg(struct doveadm_mail_cmd_context *_ctx, int c) { @@ -230,6 +238,7 @@ ctx->ctx.getopt_args = "t"; ctx->ctx.v.parse_arg = cmd_mailbox_status_parse_arg; ctx->ctx.v.init = cmd_mailbox_status_init; + ctx->ctx.v.deinit = cmd_mailbox_status_deinit; ctx->ctx.v.run = cmd_mailbox_status_run; doveadm_print_init(DOVEADM_PRINT_TYPE_FLOW); return &ctx->ctx;
--- a/src/doveadm/doveadm-mail-mailbox.c Mon Aug 05 21:47:11 2013 +0300 +++ b/src/doveadm/doveadm-mail-mailbox.c Mon Aug 05 22:13:28 2013 +0300 @@ -172,12 +172,20 @@ ctx->search_args = doveadm_mail_mailbox_search_args_build(args); } +static void cmd_mailbox_list_deinit(struct doveadm_mail_cmd_context *_ctx) +{ + struct list_cmd_context *ctx = (struct list_cmd_context *)_ctx; + + mail_search_args_unref(&ctx->search_args); +} + static struct doveadm_mail_cmd_context *cmd_mailbox_list_alloc(void) { struct list_cmd_context *ctx; ctx = doveadm_mailbox_cmd_alloc(struct list_cmd_context); ctx->ctx.ctx.v.init = cmd_mailbox_list_init; + ctx->ctx.ctx.v.deinit = cmd_mailbox_list_deinit; ctx->ctx.ctx.v.run = cmd_mailbox_list_run; ctx->ctx.ctx.v.parse_arg = cmd_mailbox_list_parse_arg; ctx->ctx.ctx.getopt_args = "78s";