aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4engine.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-10-15 21:30:20 +0200
committerLiang Qi <liang.qi@qt.io>2017-10-15 21:37:14 +0200
commit96b2323355a082599b7191f3079e8363bee825e0 (patch)
treeec2c3737566802816eb8aed8539a354179394359 /src/qml/jsruntime/qv4engine.cpp
parent83e9d165761ad68730722aeb0bffb8fabe555d1f (diff)
parent0af2998cc99e90e3df34f794801340d8a769c735 (diff)
Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts: .qmake.conf src/qml/jsruntime/qv4engine.cpp Change-Id: I5f7b63a937a214267e15ad5757844d662a4f981b
Diffstat (limited to 'src/qml/jsruntime/qv4engine.cpp')
-rw-r--r--src/qml/jsruntime/qv4engine.cpp11
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();
}
}