| Index: content/browser/renderer_host/render_process_host_impl.cc
|
| ===================================================================
|
| --- content/browser/renderer_host/render_process_host_impl.cc (revision 269838)
|
| +++ content/browser/renderer_host/render_process_host_impl.cc (working copy)
|
| @@ -1711,11 +1711,12 @@
|
|
|
| iterator iter(AllHostsIterator());
|
| while (!iter.IsAtEnd()) {
|
| - if (RenderProcessHostImpl::IsSuitableHost(
|
| + if (GetContentClient()->browser()->MayReuseHost(iter.GetCurrentValue()) &&
|
| + RenderProcessHostImpl::IsSuitableHost(
|
| iter.GetCurrentValue(),
|
| - browser_context, site_url))
|
| + browser_context, site_url)) {
|
| suitable_renderers.push_back(iter.GetCurrentValue());
|
| -
|
| + }
|
| iter.Advance();
|
| }
|
|
|
| @@ -1768,7 +1769,8 @@
|
| std::string site = SiteInstance::GetSiteForURL(browser_context, url)
|
| .possibly_invalid_spec();
|
| RenderProcessHost* host = map->FindProcess(site);
|
| - if (host && !IsSuitableHost(host, browser_context, url)) {
|
| + if (host && (!GetContentClient()->browser()->MayReuseHost(host) ||
|
| + !IsSuitableHost(host, browser_context, url))) {
|
| // The registered process does not have an appropriate set of bindings for
|
| // the url. Remove it from the map so we can register a better one.
|
| RecordAction(
|
|
|