Mercurial > dovecot > original-hg > dovecot-1.2
changeset 5083:aba0bc3338c9 HEAD
If save_commit_pre() fails, rollback the transaction.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 25 Jan 2007 19:24:47 +0200 |
parents | 0074574b9d2c |
children | 68b0ef27bc6a |
files | src/lib-storage/index/maildir/maildir-transaction.c |
diffstat | 1 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/index/maildir/maildir-transaction.c Thu Jan 25 19:23:12 2007 +0200 +++ b/src/lib-storage/index/maildir/maildir-transaction.c Thu Jan 25 19:24:47 2007 +0200 @@ -27,9 +27,13 @@ save_ctx = mt->save_ctx; - if (index_transaction_finish_commit(&mt->ictx, log_file_seq_r, - log_file_offset_r) < 0) - ret = -1; + if (ret == 0) { + if (index_transaction_finish_commit(&mt->ictx, log_file_seq_r, + log_file_offset_r) < 0) + ret = -1; + } else { + index_transaction_finish_rollback(&mt->ictx); + } /* transaction is destroyed now. */ mt = NULL;