summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qmlintegercache_p.h
diff options
context:
space:
mode:
authorAaron Kennedy <aaron.kennedy@nokia.com>2009-10-26 01:36:00 (GMT)
committerAaron Kennedy <aaron.kennedy@nokia.com>2009-10-26 01:36:00 (GMT)
commit2b0cf3b6a2f1c49f40d6f50b4d24bdd87a4807fa (patch)
tree5054d537a64aedb53761ae5c8f3ee8b8dda1aa1a /src/declarative/qml/qmlintegercache_p.h
parentcbb1b29d397c063fc3bcae04c5b062f20cbd12c5 (diff)
downloadQt-2b0cf3b6a2f1c49f40d6f50b4d24bdd87a4807fa.zip
Qt-2b0cf3b6a2f1c49f40d6f50b4d24bdd87a4807fa.tar.gz
Qt-2b0cf3b6a2f1c49f40d6f50b4d24bdd87a4807fa.tar.bz2
Ensure cleanup happens before the destruction of QScriptEngine
This was causing crashes on windows.
Diffstat (limited to 'src/declarative/qml/qmlintegercache_p.h')
-rw-r--r--src/declarative/qml/qmlintegercache_p.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/declarative/qml/qmlintegercache_p.h b/src/declarative/qml/qmlintegercache_p.h
index e11e0be..6e9fadd 100644
--- a/src/declarative/qml/qmlintegercache_p.h
+++ b/src/declarative/qml/qmlintegercache_p.h
@@ -55,13 +55,14 @@
#include <private/qmlrefcount_p.h>
#include <private/qscriptdeclarativeclass_p.h>
+#include <private/qmlcleanup_p.h>
#include <QtCore/qhash.h>
QT_BEGIN_NAMESPACE
class QmlType;
class QmlEngine;
-class QmlIntegerCache : public QmlRefCount
+class QmlIntegerCache : public QmlRefCount, public QmlCleanup
{
public:
QmlIntegerCache(QmlEngine *);
@@ -73,6 +74,10 @@ public:
inline int value(const QScriptDeclarativeClass::Identifier &id) const;
static QmlIntegerCache *createForEnums(QmlType *, QmlEngine *);
+
+protected:
+ virtual void clear();
+
private:
struct Data : public QScriptDeclarativeClass::PersistentIdentifier {
Data(const QScriptDeclarativeClass::PersistentIdentifier &i, int v)