Index: third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp |
diff --git a/third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp b/third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp |
index 01e4852db4191a6f1eb15172039a0c4a84534da4..602e2bd0ff793506ad32db9548b2391e406c612b 100644 |
--- a/third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp |
+++ b/third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp |
@@ -221,11 +221,11 @@ WindowProxy* ScriptController::existingWindowProxy(DOMWrapperWorld& world) { |
WindowProxy* ScriptController::windowProxy(DOMWrapperWorld& world) { |
WindowProxy* windowProxy = m_windowProxyManager->windowProxy(world); |
- if (!windowProxy->isContextInitialized() && |
- windowProxy->initializeIfNeeded() && world.isMainWorld()) |
- frame()->loader().dispatchDidClearWindowObjectInMainWorld(); |
- // FIXME: There are some situations where we can return an uninitialized |
- // context. This is broken. |
+ if (!windowProxy->isContextInitialized()) { |
+ windowProxy->initializeIfNeeded(); |
+ if (world.isMainWorld()) |
+ frame()->loader().dispatchDidClearWindowObjectInMainWorld(); |
+ } |
return windowProxy; |
} |