Index: third_party/WebKit/Source/core/testing/Internals.cpp |
diff --git a/third_party/WebKit/Source/core/testing/Internals.cpp b/third_party/WebKit/Source/core/testing/Internals.cpp |
index caf7f7a671ae921a6a3ca55f15a9316a693d2e79..552119c21879c15481a47ff6761d7b9e489d07ea 100644 |
--- a/third_party/WebKit/Source/core/testing/Internals.cpp |
+++ b/third_party/WebKit/Source/core/testing/Internals.cpp |
@@ -897,8 +897,15 @@ void Internals::setFormControlStateOfHistoryItem( |
DOMWindow* Internals::pagePopupWindow() const { |
if (!m_document) |
return nullptr; |
- if (Page* page = m_document->page()) |
- return page->chromeClient().pagePopupWindowForTesting(); |
+ if (Page* page = m_document->page()) { |
+ LocalDOMWindow* popup = |
+ toLocalDOMWindow(page->chromeClient().pagePopupWindowForTesting()); |
+ if (popup) { |
+ // We need to make the popup same origin so layout tests can access it. |
+ popup->document()->updateSecurityOrigin(m_document->getSecurityOrigin()); |
+ } |
+ return popup; |
+ } |
return nullptr; |
} |