diff options
author | Liang Qi <liang.qi@qt.io> | 2017-11-06 18:05:00 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2017-11-06 18:05:07 +0100 |
commit | 692ff260851575171be6751a7bdf34a744c2ed9d (patch) | |
tree | 67c2ee80fb6a477f731ebc1898a5dfd43c878d2d /src/qml/jsruntime/qv4engine.cpp | |
parent | 8740f35e69dad301eeaa2fc4b74ecab661cdc0c4 (diff) | |
parent | 5cb76fb3704947cfc4d575695b137460ecc8bbd9 (diff) |
Merge remote-tracking branch 'origin/5.10' into dev
Change-Id: I1ed923d72566af663555898c3ec708191eef8ae9
Diffstat (limited to 'src/qml/jsruntime/qv4engine.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4engine.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp index a5fc37b91b..7b298a302c 100644 --- a/src/qml/jsruntime/qv4engine.cpp +++ b/src/qml/jsruntime/qv4engine.cpp @@ -502,10 +502,8 @@ ExecutionEngine::~ExecutionEngine() delete identifierTable; delete memoryManager; - QSet<QV4::CompiledData::CompilationUnit*> remainingUnits; - qSwap(compilationUnits, remainingUnits); - for (QV4::CompiledData::CompilationUnit *unit : qAsConst(remainingUnits)) - unit->unlink(); + while (!compilationUnits.isEmpty()) + (*compilationUnits.begin())->unlink(); internalClasses[Class_Empty]->destroy(); delete classPool; @@ -970,9 +968,8 @@ void ExecutionEngine::markObjects(MarkStack *markStack) classPool->markObjects(markStack); markStack->drain(); - for (QSet<CompiledData::CompilationUnit*>::ConstIterator it = compilationUnits.constBegin(), end = compilationUnits.constEnd(); - it != end; ++it) { - (*it)->markObjects(markStack); + for (auto compilationUnit: compilationUnits) { + compilationUnit->markObjects(markStack); markStack->drain(); } } |