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 4750b1419f05e69eabf8c5f4a002a46398b810ab..909b745fcb0cbcbfa6459a3c92a86f43f655d991 100644 |
--- a/content/browser/web_contents/web_contents_impl.cc |
+++ b/content/browser/web_contents/web_contents_impl.cc |
@@ -405,6 +405,7 @@ WebContentsImpl::WebContentsImpl(BrowserContext* browser_context) |
#else |
media_web_contents_observer_.reset(new MediaWebContentsObserver(this)); |
#endif |
+ loader_io_thread_notifier_.reset(new LoaderIOThreadNotifier(this)); |
wake_lock_service_context_.reset(new WakeLockServiceContext(this)); |
} |
@@ -1827,7 +1828,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 |
nasko
2016/01/20 22:22:09
nit: Let's strive to avoid using "view", as the "v
Charlie Harrison
2016/01/21 18:52:55
Done.
|
+ // 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. |
+ if (site_instance == source_site_instance) { |
+ ResourceDispatcherHostImpl::NotifyForRoute( |
+ GlobalFrameRoutingId(render_process_id, main_frame_route_id), |
+ base::Bind( |
+ &ResourceDispatcherHostImpl::ResumeBlockedRequestsForRoute)); |
+ } |
return; |
} |