]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Set mailbox_transaction_context.flags earlier
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Tue, 6 Feb 2018 13:10:48 +0000 (15:10 +0200)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Mon, 12 Feb 2018 12:00:57 +0000 (14:00 +0200)
Set it in index_transaction_init() so plugins' transaction_begin() methods
see it after calling super.transaction_begin().

src/lib-storage/index/index-transaction.c
src/lib-storage/mail-storage.c

index 45085ec177eb489d9329ae9962af8f41a17784cc..cb0e5637c8a9d953c3e88b0eccc8395887fbf6e2 100644 (file)
@@ -162,6 +162,7 @@ void index_transaction_init(struct mailbox_transaction_context *t,
        if ((flags & MAILBOX_TRANSACTION_FLAG_REFRESH) != 0)
                mail_index_refresh(box->index);
 
+       t->flags = flags;
        t->box = box;
        t->reason = i_strdup(reason);
        t->itrans = mail_index_transaction_begin(box->view, itrans_flags);
index 540e2abc8b8cd09c3b284ae749ea9cde53baccd4..8d5b7799f1a86b213cd3a95f66f4149a89ef3ddf 100644 (file)
@@ -2177,7 +2177,6 @@ mailbox_transaction_begin(struct mailbox *box,
        box->transaction_count++;
        trans = box->v.transaction_begin(box, flags, reason);
        i_assert(trans->reason != NULL);
-       trans->flags = flags;
        return trans;
 }