aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qdeclarativecomponent.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/qml/qdeclarativecomponent.cpp')
-rw-r--r--src/declarative/qml/qdeclarativecomponent.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp
index e99928d862..ca7f3e0f74 100644
--- a/src/declarative/qml/qdeclarativecomponent.cpp
+++ b/src/declarative/qml/qdeclarativecomponent.cpp
@@ -54,7 +54,6 @@
#include "private/qdeclarativescriptparser_p.h"
#include "private/qdeclarativedebugtrace_p.h"
#include "private/qdeclarativeenginedebug_p.h"
-#include <QtScript/qscriptvalueiterator.h>
#include <QStack>
#include <QStringList>
@@ -672,7 +671,7 @@ void QDeclarativeComponent::createObject(QDeclarativeV8Function *args)
QDeclarativeEngine *engine = d->engine;
QDeclarativeEnginePrivate *ep = QDeclarativeEnginePrivate::get(engine);
- QV8Engine *v8engine = &ep->v8engine;
+ QV8Engine *v8engine = ep->v8engine();
QDeclarativeContext *ctxt = creationContext();
if (!ctxt) ctxt = engine->rootContext();
@@ -748,6 +747,10 @@ void QDeclarativeComponent::createObject(QDeclarativeV8Function *args)
completeCreate();
+ QDeclarativeData *ddata = QDeclarativeData::get(ret);
+ Q_ASSERT(ddata);
+ ddata->setImplicitDestructible();
+
RETURN(object);
#undef RETURN