--- a/src/array_list.c Sun Sep 21 19:31:30 2025 +0200 +++ b/src/array_list.c Mon Sep 22 19:22:23 2025 +0200 @@ -942,6 +942,7 @@ if (iter->base.remove) { iter->base.remove = false; cx_arl_remove(iter->src_handle.m, iter->index, 1, NULL); + iter->elem_count--; } else { iter->index++; iter->elem_handle = @@ -956,6 +957,7 @@ if (iter->base.remove) { iter->base.remove = false; cx_arl_remove(iter->src_handle.m, iter->index, 1, NULL); + iter->elem_count--; } iter->index--; if (iter->index < list->base.collection.size) {