diff options
Diffstat (limited to 'Source/JavaScriptCore/runtime/StrictEvalActivation.cpp')
-rw-r--r-- | Source/JavaScriptCore/runtime/StrictEvalActivation.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/Source/JavaScriptCore/runtime/StrictEvalActivation.cpp b/Source/JavaScriptCore/runtime/StrictEvalActivation.cpp index eaef9397b..4260e10b9 100644 --- a/Source/JavaScriptCore/runtime/StrictEvalActivation.cpp +++ b/Source/JavaScriptCore/runtime/StrictEvalActivation.cpp @@ -27,19 +27,19 @@ #include "StrictEvalActivation.h" #include "JSGlobalObject.h" -#include "Operations.h" +#include "JSCInlines.h" namespace JSC { -ASSERT_HAS_TRIVIAL_DESTRUCTOR(StrictEvalActivation); +STATIC_ASSERT_IS_TRIVIALLY_DESTRUCTIBLE(StrictEvalActivation); -const ClassInfo StrictEvalActivation::s_info = { "Object", &Base::s_info, 0, 0, CREATE_METHOD_TABLE(StrictEvalActivation) }; +const ClassInfo StrictEvalActivation::s_info = { "Object", &Base::s_info, 0, CREATE_METHOD_TABLE(StrictEvalActivation) }; -StrictEvalActivation::StrictEvalActivation(ExecState* exec) +StrictEvalActivation::StrictEvalActivation(ExecState* exec, JSScope* currentScope) : Base( exec->vm(), exec->lexicalGlobalObject()->strictEvalActivationStructure(), - exec->scope() + currentScope ) { } @@ -49,8 +49,10 @@ bool StrictEvalActivation::deleteProperty(JSCell*, ExecState*, PropertyName) return false; } -JSObject* StrictEvalActivation::toThisObject(JSCell*, ExecState* exec) +JSValue StrictEvalActivation::toThis(JSCell*, ExecState* exec, ECMAMode ecmaMode) { + if (ecmaMode == StrictMode) + return jsUndefined(); return exec->globalThisValue(); } |