Index: Source/bindings/core/v8/ScriptController.cpp |
diff --git a/Source/bindings/core/v8/ScriptController.cpp b/Source/bindings/core/v8/ScriptController.cpp |
index 94a454008a6a30c2328eb8faa2fa5bb6bb492702..357fae801670223a7a6d145583ecab946ce129bb 100644 |
--- a/Source/bindings/core/v8/ScriptController.cpp |
+++ b/Source/bindings/core/v8/ScriptController.cpp |
@@ -141,6 +141,10 @@ void ScriptController::clearForClose() |
void ScriptController::updateSecurityOrigin(SecurityOrigin* origin) |
{ |
m_windowProxyManager->mainWorldProxy()->updateSecurityOrigin(origin); |
+ Vector<std::pair<ScriptState*, SecurityOrigin*>> isolatedContexts; |
+ m_windowProxyManager->collectIsolatedContexts(isolatedContexts); |
+ for (auto isolatedContext : isolatedContexts) |
+ m_windowProxyManager->windowProxy(isolatedContext.first->world())->updateSecurityOrigin(isolatedContext.second); |
} |
v8::MaybeLocal<v8::Value> ScriptController::callFunction(v8::Local<v8::Function> function, v8::Local<v8::Value> receiver, int argc, v8::Local<v8::Value> info[]) |