summaryrefslogtreecommitdiffstats
path: root/WebCore/bindings/js/JSCallbackData.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/bindings/js/JSCallbackData.cpp')
-rw-r--r--WebCore/bindings/js/JSCallbackData.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/WebCore/bindings/js/JSCallbackData.cpp b/WebCore/bindings/js/JSCallbackData.cpp
index f39c53c..204c348 100644
--- a/WebCore/bindings/js/JSCallbackData.cpp
+++ b/WebCore/bindings/js/JSCallbackData.cpp
@@ -65,12 +65,14 @@ JSValue JSCallbackData::invokeCallback(MarkedArgumentBuffer& args, bool* raisedE
if (!context)
return JSValue();
- JSValue result = context->isDocument()
+ bool contextIsDocument = context->isDocument();
+ JSValue result = contextIsDocument
? JSMainThreadExecState::call(exec, function, callType, callData, callback(), args)
: JSC::call(exec, function, callType, callData, callback(), args);
globalObject()->globalData().timeoutChecker.stop();
- Document::updateStyleForAllDocuments();
+ if (contextIsDocument)
+ Document::updateStyleForAllDocuments();
if (exec->hadException()) {
reportCurrentException(exec);