Index: content/browser/site_instance_impl.cc |
diff --git a/content/browser/site_instance_impl.cc b/content/browser/site_instance_impl.cc |
index 3a93f25c9fa5de8db5c3b77772fed47daedd22bd..9911fbce4e49a31cb3a0e8105c6dc4eb22692f70 100644 |
--- a/content/browser/site_instance_impl.cc |
+++ b/content/browser/site_instance_impl.cc |
@@ -191,7 +191,10 @@ bool SiteInstanceImpl::HasRelatedSiteInstance(const GURL& url) { |
} |
SiteInstance* SiteInstanceImpl::GetRelatedSiteInstance(const GURL& url) { |
- return browsing_instance_->GetSiteInstanceForURL(url); |
+ SiteInstance* result = browsing_instance_->GetSiteInstanceForURL(url); |
+ if (render_process_host_factory_) |
+ result->SetRenderProcessHostFactory(render_process_host_factory_); |
+ return result; |
} |
bool SiteInstanceImpl::IsRelatedSiteInstance(const SiteInstance* instance) { |
@@ -224,6 +227,11 @@ BrowserContext* SiteInstanceImpl::GetBrowserContext() const { |
return browsing_instance_->browser_context(); |
} |
+void SiteInstanceImpl::SetRenderProcessHostFactory( |
+ const RenderProcessHostFactory* rph_factory) { |
+ render_process_host_factory_ = rph_factory; |
+} |
+ |
/*static*/ |
SiteInstance* SiteInstance::Create(BrowserContext* browser_context) { |
return new SiteInstanceImpl(new BrowsingInstance(browser_context)); |