diff options
Diffstat (limited to 'WebCore/bindings/js/JSCallbackData.cpp')
-rw-r--r-- | WebCore/bindings/js/JSCallbackData.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/WebCore/bindings/js/JSCallbackData.cpp b/WebCore/bindings/js/JSCallbackData.cpp index e128f27..e813da2 100644 --- a/WebCore/bindings/js/JSCallbackData.cpp +++ b/WebCore/bindings/js/JSCallbackData.cpp @@ -31,6 +31,7 @@ #include "Document.h" #include "JSDOMBinding.h" +#include "JSMainThreadExecState.h" using namespace JSC; @@ -59,7 +60,9 @@ JSValue JSCallbackData::invokeCallback(MarkedArgumentBuffer& args, bool* raisedE } globalObject()->globalData()->timeoutChecker.start(); - JSValue result = JSC::call(exec, function, callType, callData, callback(), args); + JSValue result = globalObject()->scriptExecutionContext()->isDocument() + ? JSMainThreadExecState::call(exec, function, callType, callData, callback(), args) + : JSC::call(exec, function, callType, callData, callback(), args); globalObject()->globalData()->timeoutChecker.stop(); Document::updateStyleForAllDocuments(); |