]> 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)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Thu, 8 Feb 2018 09:08:24 +0000 (11:08 +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 4b8565d1540ea2fa247594b3b8c8bfec9e041eb0..2aa6fbebd0e5b029a230004fb91bdcc3ee373748 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 d3176853739f213933379c0129bc5d970d0fee41..692cb4520efa78c02f1304eeb6aa09f26b5f6940 100644 (file)
@@ -2147,7 +2147,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;
 }