]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
virtual: virtual_transaction_commit() - Propagate error details from commits of under...
authorMarco Bettini <marco.bettini@open-xchange.com>
Thu, 6 Apr 2023 15:03:38 +0000 (15:03 +0000)
committerMarco Bettini <marco.bettini@open-xchange.com>
Fri, 21 Apr 2023 07:11:56 +0000 (07:11 +0000)
src/plugins/virtual/virtual-transaction.c

index 7bb82b7438a21a59c76258120efced9b1f54b170..4cb582c981351aed2915e8cd6f9c10bb41f2f860 100644 (file)
@@ -55,8 +55,11 @@ int virtual_transaction_commit(struct mailbox_transaction_context *t,
        int ret = 0;
        struct mailbox_transaction_context *bt;
        array_foreach_elem(&vt->backend_transactions, bt) {
-               if (mailbox_transaction_commit(&bt) < 0)
+               struct mailbox *bbox = bt->box;
+               if (mailbox_transaction_commit(&bt) < 0) {
                        ret = -1;
+                       virtual_box_copy_error(vt->t.box, bbox);
+               }
        }
        array_free(&vt->backend_transactions);