From 385b27ed5f4b0b015e89af0a0b21e45f65a37e18 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Sat, 16 Feb 2013 13:32:57 +0200 Subject: [PATCH] mdbox: mailbox_copy() didn't properly free the save context. --- src/lib-storage/index/dbox-multi/mdbox-save.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib-storage/index/dbox-multi/mdbox-save.c b/src/lib-storage/index/dbox-multi/mdbox-save.c index a673c90f03..a6226f4790 100644 --- a/src/lib-storage/index/dbox-multi/mdbox-save.c +++ b/src/lib-storage/index/dbox-multi/mdbox-save.c @@ -426,8 +426,10 @@ int mdbox_copy(struct mail_save_context *_ctx, struct mail *mail) memset(&rec, 0, sizeof(rec)); rec.save_date = ioloop_time; if (mdbox_mail_lookup(src_mbox, mail->transaction->view, mail->seq, - &rec.map_uid) < 0) + &rec.map_uid) < 0) { + index_save_context_free(_ctx); return -1; + } mail_index_lookup_ext(mail->transaction->view, mail->seq, src_mbox->guid_ext_id, &guid_data, &expunged); @@ -462,5 +464,6 @@ int mdbox_copy(struct mail_save_context *_ctx, struct mail *mail) if (_ctx->dest_mail != NULL) mail_set_seq_saving(_ctx->dest_mail, ctx->ctx.seq); + index_save_context_free(_ctx); return 0; } -- 2.47.3