summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qdeclarativecontext.cpp
diff options
context:
space:
mode:
authorBea Lam <bea.lam@nokia.com>2010-03-03 23:39:52 (GMT)
committerBea Lam <bea.lam@nokia.com>2010-03-03 23:39:52 (GMT)
commit651f4336392f86cb5820e3e3cccdc56ec3a0efe8 (patch)
tree4435c8348f40a4a2be184063cc5a5197f61a650e /src/declarative/qml/qdeclarativecontext.cpp
parentf53ac4f7617bfdefcb62e9b27ee6bf1a91a7ed13 (diff)
parent5ac068602871b78eb4b58634d58e6b8898acbf8d (diff)
downloadQt-651f4336392f86cb5820e3e3cccdc56ec3a0efe8.zip
Qt-651f4336392f86cb5820e3e3cccdc56ec3a0efe8.tar.gz
Qt-651f4336392f86cb5820e3e3cccdc56ec3a0efe8.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7
Diffstat (limited to 'src/declarative/qml/qdeclarativecontext.cpp')
-rw-r--r--src/declarative/qml/qdeclarativecontext.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/declarative/qml/qdeclarativecontext.cpp b/src/declarative/qml/qdeclarativecontext.cpp
index b244cd8..35e7a77 100644
--- a/src/declarative/qml/qdeclarativecontext.cpp
+++ b/src/declarative/qml/qdeclarativecontext.cpp
@@ -47,6 +47,7 @@
#include "qdeclarativeengine.h"
#include "qdeclarativecompiledbindings_p.h"
#include "qdeclarativeinfo.h"
+#include "qdeclarativeglobalscriptclass_p.h"
#include <qscriptengine.h>
#include <QtCore/qvarlengtharray.h>
@@ -74,10 +75,13 @@ void QDeclarativeContextPrivate::addScript(const QDeclarativeParser::Object::Scr
QScriptEngine *scriptEngine = QDeclarativeEnginePrivate::getScriptEngine(engine);
QScriptContext *scriptContext = QScriptDeclarativeClass::pushCleanContext(scriptEngine);
+
scriptContext->pushScope(enginePriv->contextClass->newContext(q, scopeObject));
+ scriptContext->pushScope(enginePriv->globalClass->globalObject());
QScriptValue scope = scriptEngine->newObject();
scriptContext->setActivationObject(scope);
+ scriptContext->pushScope(scope);
for (int ii = 0; ii < script.codes.count(); ++ii) {
scriptEngine->evaluate(script.codes.at(ii), script.files.at(ii), script.lineNumbers.at(ii));