diff --git a/src/cppgc_helpers.cc b/src/cppgc_helpers.cc index 7c557a822d20..2453658913a9 100644 --- a/src/cppgc_helpers.cc +++ b/src/cppgc_helpers.cc @@ -4,11 +4,14 @@ namespace node { void CppgcWrapperList::Cleanup() { - for (auto node : *this) { + for (auto it = begin(); it != end();) { + CppgcWrapperListNode* node = *it; + ++it; CppgcMixin* ptr = node->persistent.Get(); if (ptr != nullptr) { ptr->Finalize(); } + delete node; } }