]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
virtual: Sync each backend mailbox in its own data stack frame
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Tue, 27 Dec 2022 17:04:03 +0000 (19:04 +0200)
committerTimo Sirainen <timo.sirainen@open-xchange.com>
Wed, 11 Jan 2023 22:02:11 +0000 (00:02 +0200)
src/plugins/virtual/virtual-sync.c

index 58e8e9926e08a15673e4d9afa84a78d5a67eeb7d..b9e7934136c4828f90ffe56a5f3b17516fe22521 100644 (file)
@@ -1829,7 +1829,10 @@ static int virtual_sync_backend_boxes(struct virtual_sync_context *ctx)
                virtual_sync_bboxes_get_mails(ctx);
 
        for (i = 0; i < count; i++) {
-               if (virtual_sync_backend_box(ctx, bboxes[i]) < 0) {
+               T_BEGIN {
+                       ret = virtual_sync_backend_box(ctx, bboxes[i]);
+               } T_END;
+               if (ret < 0) {
                        /* backend failed, copy the error */
                        virtual_box_copy_error(&ctx->mbox->box,
                                               bboxes[i]->box);