]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
virtual: virtual_transaction_commit() - Use array_foreach_elem()
authorMarco Bettini <marco.bettini@open-xchange.com>
Thu, 6 Apr 2023 14:58:30 +0000 (14:58 +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 319d653d9c339612492c39243bb26969b025dc79..7bb82b7438a21a59c76258120efced9b1f54b170 100644 (file)
@@ -46,18 +46,16 @@ int virtual_transaction_commit(struct mailbox_transaction_context *t,
 {
        struct virtual_transaction_context *vt =
                container_of(t, struct virtual_transaction_context, t);
-       struct mailbox_transaction_context **bt;
-       unsigned int i, count;
-       int ret = 0;
 
        if (t->save_ctx != NULL) {
                virtual_save_free(t->save_ctx);
                t->save_ctx = NULL;
        }
 
-       bt = array_get_modifiable(&vt->backend_transactions, &count);
-       for (i = 0; i < count; i++) {
-               if (mailbox_transaction_commit(&bt[i]) < 0)
+       int ret = 0;
+       struct mailbox_transaction_context *bt;
+       array_foreach_elem(&vt->backend_transactions, bt) {
+               if (mailbox_transaction_commit(&bt) < 0)
                        ret = -1;
        }
        array_free(&vt->backend_transactions);