aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/qml/jsruntime/qv4engine.cpp2
-rw-r--r--src/qml/jsruntime/qv4identifiertable.cpp3
2 files changed, 4 insertions, 1 deletions
diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp
index 95f6def648..acaae460b5 100644
--- a/src/qml/jsruntime/qv4engine.cpp
+++ b/src/qml/jsruntime/qv4engine.cpp
@@ -273,10 +273,10 @@ ExecutionEngine::~ExecutionEngine()
delete debugger;
delete m_multiplyWrappedQObjects;
m_multiplyWrappedQObjects = 0;
+ delete identifierTable;
delete memoryManager;
delete m_qmlExtensions;
emptyClass->destroy();
- delete identifierTable;
delete bumperPointerAllocator;
delete regExpCache;
UnwindHelper::deregisterFunctions(functions);
diff --git a/src/qml/jsruntime/qv4identifiertable.cpp b/src/qml/jsruntime/qv4identifiertable.cpp
index 5de2f893ef..07c19e4f8c 100644
--- a/src/qml/jsruntime/qv4identifiertable.cpp
+++ b/src/qml/jsruntime/qv4identifiertable.cpp
@@ -67,6 +67,9 @@ IdentifierTable::IdentifierTable(ExecutionEngine *engine)
IdentifierTable::~IdentifierTable()
{
+ for (int i = 0; i < alloc; ++i)
+ if (entries[i])
+ delete entries[i]->identifier;
free(entries);
}