Index: Source/core/inspector/PageRuntimeAgent.cpp |
diff --git a/Source/core/inspector/PageRuntimeAgent.cpp b/Source/core/inspector/PageRuntimeAgent.cpp |
index 9c1d5a2d6d0912b7907f10a6bb0e2972ec1027e8..e95545f2005a7c817c89be49f9da34da0f2cb943 100644 |
--- a/Source/core/inspector/PageRuntimeAgent.cpp |
+++ b/Source/core/inspector/PageRuntimeAgent.cpp |
@@ -105,8 +105,20 @@ void PageRuntimeAgent::didClearDocumentOfWindowObject(LocalFrame* frame) |
m_scriptStateToId.clear(); |
m_frontend->executionContextsCleared(); |
} |
+ if (!frame->script().initializeMainWorld()) { |
aandrey
2014/10/29 15:18:50
I don't think we should initialize main world from
eustas
2014/10/30 10:08:04
Actually, we need to initialize main world sooner
|
+ // Reusing existing context. |
+ String frameId = m_pageAgent->frameId(frame); |
+ addExecutionContextToFrontend(ScriptState::forMainWorld(frame), true, "", frameId); |
+ } |
+} |
+ |
+void PageRuntimeAgent::didCreateMainWorldContext(LocalFrame* frame, ScriptState* scriptState, SecurityOrigin* origin) |
+{ |
+ if (!m_enabled) |
+ return; |
+ ASSERT(m_frontend); |
String frameId = m_pageAgent->frameId(frame); |
- addExecutionContextToFrontend(ScriptState::forMainWorld(frame), true, "", frameId); |
+ addExecutionContextToFrontend(scriptState, true, origin->toRawString(), frameId); |
} |
void PageRuntimeAgent::didCreateIsolatedContext(LocalFrame* frame, ScriptState* scriptState, SecurityOrigin* origin) |