From 08df28a63b3efb0f0ee30c3e7ef44c0a1e7bb459 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 c0a3bf13bd..2193c8acec 100644 --- a/src/lib-storage/index/dbox-multi/mdbox-save.c +++ b/src/lib-storage/index/dbox-multi/mdbox-save.c @@ -425,8 +425,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); @@ -461,5 +463,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