summaryrefslogtreecommitdiffstats
path: root/src/script/api/qscriptengine.cpp
diff options
context:
space:
mode:
authorJason McDonald <jason.mcdonald@nokia.com>2009-10-06 08:19:11 (GMT)
committerJason McDonald <jason.mcdonald@nokia.com>2009-10-06 08:19:11 (GMT)
commit843013460ff6ee60d3553a31faa3eedef88bd199 (patch)
treebfdbcf8c158c74817f5c33d0016e5567510311d8 /src/script/api/qscriptengine.cpp
parentbec7a9cced7b69aef707bad4931fa4d3c35b37fa (diff)
parentf18ea32865521e21f47ea2745181e0e70db0266f (diff)
downloadQt-843013460ff6ee60d3553a31faa3eedef88bd199.zip
Qt-843013460ff6ee60d3553a31faa3eedef88bd199.tar.gz
Qt-843013460ff6ee60d3553a31faa3eedef88bd199.tar.bz2
Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6
Diffstat (limited to 'src/script/api/qscriptengine.cpp')
-rw-r--r--src/script/api/qscriptengine.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/script/api/qscriptengine.cpp b/src/script/api/qscriptengine.cpp
index 09042e1..3402190 100644
--- a/src/script/api/qscriptengine.cpp
+++ b/src/script/api/qscriptengine.cpp
@@ -805,7 +805,6 @@ QScriptEnginePrivate::QScriptEnginePrivate()
JSC::JSGlobalObject *globalObject = new (globalData)QScript::GlobalObject();
JSC::ExecState* exec = globalObject->globalExec();
- *thisRegisterForFrame(exec) = JSC::JSValue();
scriptObjectStructure = QScriptObject::createStructure(globalObject->objectPrototype());
@@ -1079,12 +1078,13 @@ JSC::JSValue QScriptEnginePrivate::toUsableValue(JSC::JSValue value)
/*!
\internal
Return the 'this' value for a given context
- The result may be null for the global context
*/
JSC::JSValue QScriptEnginePrivate::thisForContext(JSC::ExecState *frame)
{
if (frame->codeBlock() != 0) {
return frame->thisValue();
+ } else if(frame == frame->lexicalGlobalObject()->globalExec()) {
+ return frame->globalThisValue();
} else {
JSC::Register *thisRegister = thisRegisterForFrame(frame);
return thisRegister->jsValue();