From: Timo Sirainen Date: Wed, 29 Mar 2017 10:28:36 +0000 (+0300) Subject: lib-storage: Fix potential dict transaction leak on transaction rollback. X-Git-Tag: 2.3.0.rc1~1851 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=acfeae4e2b5c2acdab88a1377ff6cd4a9b5f0a3a;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: Fix potential dict transaction leak on transaction rollback. --- diff --git a/src/lib-storage/index/index-transaction.c b/src/lib-storage/index/index-transaction.c index cc385a6414..45ec4725d0 100644 --- a/src/lib-storage/index/index-transaction.c +++ b/src/lib-storage/index/index-transaction.c @@ -103,6 +103,11 @@ index_transaction_index_rollback(struct mail_index_transaction *index_trans) struct mailbox_transaction_context *t = MAIL_STORAGE_CONTEXT(index_trans); + if (t->attr_pvt_trans != NULL) + dict_transaction_rollback(&t->attr_pvt_trans); + if (t->attr_shared_trans != NULL) + dict_transaction_rollback(&t->attr_shared_trans); + if (t->save_ctx != NULL) { mailbox_save_context_deinit(t->save_ctx); t->box->v.transaction_save_rollback(t->save_ctx);