aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qdeclarativeengine.cpp
diff options
context:
space:
mode:
authorChris Adams <christopher.adams@nokia.com>2011-08-22 15:04:01 +1000
committerQt by Nokia <qt-info@nokia.com>2011-09-30 10:37:05 +0200
commit5d62a90fe129b09ecc6526ccd815469ef4ff774d (patch)
treeb09d2e2f6bcb07fbb07aefbddbc0a58fbb4bc096 /src/declarative/qml/qdeclarativeengine.cpp
parentbc2f2c56296a77b215ccdf2ee907ef669e6ab609 (diff)
Ensure JS-owned QObjects are cleaned up on v8engine dtor
This commit ensures that the garbage collector is invoked during engine destruction. This commit also adds a unit test which ensures that the JS GC destroys JS-owned C++ objects correctly when the QDeclarativeEngine is destroyed. Task-number: QTBUG-20377 Change-Id: I2de1f2dfd1e60cc2f76abb523b99bf169d2a5a13 Reviewed-on: http://codereview.qt-project.org/3285 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Diffstat (limited to 'src/declarative/qml/qdeclarativeengine.cpp')
-rw-r--r--src/declarative/qml/qdeclarativeengine.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp
index 1e35f0a0ba..5d7710f17b 100644
--- a/src/declarative/qml/qdeclarativeengine.cpp
+++ b/src/declarative/qml/qdeclarativeengine.cpp
@@ -531,6 +531,9 @@ QDeclarativeEngine::~QDeclarativeEngine()
d->moduleApiInstances.remove(key);
}
}
+
+ // ensure we clean up QObjects with JS ownership
+ d->v8engine()->gc();
}
/*! \fn void QDeclarativeEngine::quit()