aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/v8/qv8engine.cpp
diff options
context:
space:
mode:
authorChris Adams <christopher.adams@nokia.com>2011-10-05 17:37:12 +1000
committerQt by Nokia <qt-info@nokia.com>2011-10-05 10:41:32 +0200
commit1a36b216b19919f4489881bc5807b14cdb74c167 (patch)
tree05360ee700f3652dcdf5e857ae63b039999c8e6c /src/declarative/qml/v8/qv8engine.cpp
parent17aa5272d8f20f3e64e3bcb5c1c5bb1af8e1c7f2 (diff)
Ensure all persistent handles are disposed properly
Previously, some handles were leaking, which was causing a dramatic slowdown in v8 gc speed over time. Change-Id: I1e8d674b48647b7a0063a4b1c8d83130795502a0 Reviewed-on: http://codereview.qt-project.org/6026 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Diffstat (limited to 'src/declarative/qml/v8/qv8engine.cpp')
-rw-r--r--src/declarative/qml/v8/qv8engine.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/declarative/qml/v8/qv8engine.cpp b/src/declarative/qml/v8/qv8engine.cpp
index 33c87b7196..5259ab19b4 100644
--- a/src/declarative/qml/v8/qv8engine.cpp
+++ b/src/declarative/qml/v8/qv8engine.cpp
@@ -1390,6 +1390,11 @@ QV8GCCallback::Node::~Node()
node.remove();
}
+QV8GCCallback::Referencer::~Referencer()
+{
+ qPersistentDispose(strongReferencer);
+}
+
QV8GCCallback::Referencer::Referencer()
{
v8::HandleScope handleScope;