Index: content/browser/web_contents/web_contents_impl.cc |
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc |
index f7505af877b67c2644609a9ff6920d39dfba84a0..a16eafd1e2102f6ae53bf94b6a84c06006bcec38 100644 |
--- a/content/browser/web_contents/web_contents_impl.cc |
+++ b/content/browser/web_contents/web_contents_impl.cc |
@@ -1646,8 +1646,9 @@ void WebContentsImpl::LostMouseLock() { |
void WebContentsImpl::CreateNewWindow( |
SiteInstance* source_site_instance, |
- int route_id, |
- int main_frame_route_id, |
+ int32 route_id, |
+ int32 main_frame_route_id, |
+ int32 main_frame_widget_route_id, |
const ViewHostMsg_CreateWindow_Params& params, |
SessionStorageNamespace* session_storage_namespace) { |
// We usually create the new window in the same BrowsingInstance (group of |
@@ -1706,14 +1707,10 @@ void WebContentsImpl::CreateNewWindow( |
CHECK(session_storage_namespace_impl->IsFromContext(dom_storage_context)); |
if (delegate_ && |
- !delegate_->ShouldCreateWebContents(this, |
- route_id, |
- main_frame_route_id, |
- params.window_container_type, |
- params.frame_name, |
- params.target_url, |
- partition_id, |
- session_storage_namespace)) { |
+ !delegate_->ShouldCreateWebContents( |
+ this, route_id, main_frame_route_id, main_frame_widget_route_id, |
+ params.window_container_type, params.frame_name, params.target_url, |
+ partition_id, session_storage_namespace)) { |
if (route_id != MSG_ROUTING_NONE && |
!RenderViewHost::FromID(render_process_id, route_id)) { |
// If the embedder didn't create a WebContents for this route, we need to |
@@ -1723,6 +1720,8 @@ void WebContentsImpl::CreateNewWindow( |
GetRenderViewHost()->GetProcess()->ResumeRequestsForView(route_id); |
GetRenderViewHost()->GetProcess()->ResumeRequestsForView( |
main_frame_route_id); |
+ GetRenderViewHost()->GetProcess()->ResumeRequestsForView( |
+ main_frame_widget_route_id); |
return; |
} |
@@ -1731,6 +1730,7 @@ void WebContentsImpl::CreateNewWindow( |
CreateParams create_params(GetBrowserContext(), site_instance.get()); |
create_params.routing_id = route_id; |
create_params.main_frame_routing_id = main_frame_route_id; |
+ create_params.main_frame_widget_routing_id = main_frame_widget_route_id; |
create_params.main_frame_name = params.frame_name; |
create_params.opener_render_process_id = render_process_id; |
create_params.opener_render_frame_id = params.opener_render_frame_id; |