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 d483a29aa8cdfd9d13ca24db0a44631ce04cf0a6..85a58fef82691a677199fcaa3a7d5e91f1b4bf6c 100644 |
--- a/content/browser/web_contents/web_contents_impl.cc |
+++ b/content/browser/web_contents/web_contents_impl.cc |
@@ -415,6 +415,7 @@ WebContentsImpl::WebContentsImpl(BrowserContext* browser_context) |
frame_tree_.SetFrameRemoveListener( |
base::Bind(&WebContentsImpl::OnFrameRemoved, |
base::Unretained(this))); |
+ loader_io_thread_notifier_.reset(new LoaderIOThreadNotifier(this)); |
media_web_contents_observer_.reset(new MediaWebContentsObserver(this)); |
wake_lock_service_context_.reset(new WakeLockServiceContext(this)); |
} |
@@ -1835,7 +1836,16 @@ void WebContentsImpl::CreateNewWindow( |
// delete the RenderView that had already been created. |
Send(new ViewMsg_Close(route_id)); |
} |
- GetRenderViewHost()->GetProcess()->ResumeRequestsForView(route_id); |
+ // It's safe to only target the frame because the view will not have a |
+ // change to create more frames at this point. Additionally, the frame's |
+ // requests will only be blocked if it lives in the same process as the |
+ // source. |
Randy Smith (Not in Mondays)
2016/01/20 23:23:19
The second sentence "feels" to me as if it's an im
Charlie Harrison
2016/01/21 18:52:55
Yeah, it's not strictly necessary so I removed it.
|
+ if (site_instance == source_site_instance) { |
+ ResourceDispatcherHostImpl::NotifyForRoute( |
+ GlobalFrameRoutingId(render_process_id, main_frame_route_id), |
+ base::Bind( |
+ &ResourceDispatcherHostImpl::ResumeBlockedRequestsForRoute)); |
+ } |
return; |
} |