diff --git a/ConflictSet.cpp b/ConflictSet.cpp index 856c077..6fcfcbf 100644 --- a/ConflictSet.cpp +++ b/ConflictSet.cpp @@ -4984,16 +4984,15 @@ struct __attribute__((visibility("hidden"))) ConflictSet::Impl { // encounter invalidated nodes. for (auto *iter = firstRangeWrite; iter != nullptr; iter = iter->nextRangeWrite) { - if (iter->endInsertionPoint != nullptr) { - while (iter->insertionPoint->releaseDeferred) { - iter->insertionPoint = iter->insertionPoint->forwardTo; - } - while (iter->endInsertionPoint->releaseDeferred) { - iter->endInsertionPoint = iter->endInsertionPoint->forwardTo; - } - eraseInRange(iter->insertionPoint, iter->endInsertionPoint, - &writeContext); + assert(iter->endInsertionPoint != nullptr); + while (iter->insertionPoint->releaseDeferred) { + iter->insertionPoint = iter->insertionPoint->forwardTo; } + while (iter->endInsertionPoint->releaseDeferred) { + iter->endInsertionPoint = iter->endInsertionPoint->forwardTo; + } + eraseInRange(iter->insertionPoint, iter->endInsertionPoint, + &writeContext); } if (count > kStackResultMax) [[unlikely]] {