diff options
Diffstat (limited to 'JavaScriptCore/interpreter/CachedCall.h')
| -rw-r--r-- | JavaScriptCore/interpreter/CachedCall.h | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/JavaScriptCore/interpreter/CachedCall.h b/JavaScriptCore/interpreter/CachedCall.h index eb48a03..dfbe658 100644 --- a/JavaScriptCore/interpreter/CachedCall.h +++ b/JavaScriptCore/interpreter/CachedCall.h @@ -34,21 +34,20 @@ namespace JSC { class CachedCall : public Noncopyable { public: - CachedCall(CallFrame* callFrame, JSFunction* function, int argCount, JSValue* exception) + CachedCall(CallFrame* callFrame, JSFunction* function, int argCount) : m_valid(false) , m_interpreter(callFrame->interpreter()) - , m_exception(exception) , m_globalObjectScope(callFrame, function->scope().globalObject()) { ASSERT(!function->isHostFunction()); - m_closure = m_interpreter->prepareForRepeatCall(function->jsExecutable(), callFrame, function, argCount, function->scope().node(), exception); - m_valid = !*exception; + m_closure = m_interpreter->prepareForRepeatCall(function->jsExecutable(), callFrame, function, argCount, function->scope().node()); + m_valid = !callFrame->hadException(); } JSValue call() { ASSERT(m_valid); - return m_interpreter->execute(m_closure, m_exception); + return m_interpreter->execute(m_closure); } void setThis(JSValue v) { m_closure.setArgument(0, v); } void setArgument(int n, JSValue v) { m_closure.setArgument(n + 1, v); } @@ -69,7 +68,6 @@ namespace JSC { private: bool m_valid; Interpreter* m_interpreter; - JSValue* m_exception; DynamicGlobalObjectScope m_globalObjectScope; CallFrameClosure m_closure; }; |
