Index: content/renderer/render_frame_proxy.cc |
diff --git a/content/renderer/render_frame_proxy.cc b/content/renderer/render_frame_proxy.cc |
index 9f03df23ebc52d5630e615c4473ccc51f15c7899..fc6091cd5ccc6474ba97c7eabe5684fa03aadee1 100644 |
--- a/content/renderer/render_frame_proxy.cc |
+++ b/content/renderer/render_frame_proxy.cc |
@@ -59,8 +59,9 @@ RenderFrameProxy* RenderFrameProxy::CreateProxyToReplaceFrame( |
RenderFrameProxy* RenderFrameProxy::CreateFrameProxy( |
int routing_id, |
- int parent_routing_id, |
int render_view_routing_id, |
+ int opener_routing_id, |
+ int parent_routing_id, |
const FrameReplicationState& replicated_state) { |
scoped_ptr<RenderFrameProxy> proxy( |
new RenderFrameProxy(routing_id, MSG_ROUTING_NONE)); |
@@ -85,6 +86,10 @@ RenderFrameProxy* RenderFrameProxy::CreateFrameProxy( |
render_view = parent->render_view(); |
} |
+ blink::WebFrame* opener = |
+ RenderFrameImpl::ResolveOpener(opener_routing_id, nullptr); |
+ web_frame->setOpener(opener); |
+ |
proxy->Init(web_frame, render_view); |
// Initialize proxy's WebRemoteFrame with the security origin and other |