Chromium Code Reviews| Index: content/browser/frame_host/render_frame_host_manager.cc |
| diff --git a/content/browser/frame_host/render_frame_host_manager.cc b/content/browser/frame_host/render_frame_host_manager.cc |
| index 1dc50e79c0d7f1b3b0a266f8493823f1367d18e1..f22b83157efcc87a607166da383f4949366dbcf1 100644 |
| --- a/content/browser/frame_host/render_frame_host_manager.cc |
| +++ b/content/browser/frame_host/render_frame_host_manager.cc |
| @@ -1320,6 +1320,22 @@ RenderFrameHostManager::DetermineSiteInstanceForURL( |
| return SiteInstanceDescriptor(current_instance_impl); |
| } |
| + // In the site-per-process model, process changes are skipped for chrome:// |
| + // subframes for now, since e.g. chrome://settings has multiple "cross-site" |
|
Charlie Reis
2017/01/20 23:32:11
Let's rephrase this a bit to more closely match wh
nasko
2017/01/20 23:51:58
Done.
|
| + // chrome:// frames, and that doesn't yet work cross-process. |
| + if (SiteIsolationPolicy::AreCrossProcessFramesPossible() && |
| + !frame_tree_node_->IsMainFrame()) { |
| + GURL parent_site_url = frame_tree_node_->parent() |
|
Charlie Reis
2017/01/20 23:32:11
nit: const ref
nasko
2017/01/20 23:51:57
No longer present.
|
| + ->current_frame_host() |
| + ->GetSiteInstance() |
|
Charlie Reis
2017/01/20 23:32:11
Let's define parent_site_instance as a local varia
nasko
2017/01/20 23:51:57
Done.
|
| + ->GetSiteURL(); |
| + if (parent_site_url.SchemeIs(kChromeUIScheme) && |
| + dest_url.SchemeIs(kChromeUIScheme)) { |
| + return SiteInstanceDescriptor( |
| + frame_tree_node_->parent()->current_frame_host()->GetSiteInstance()); |
| + } |
| + } |
| + |
| // If we haven't used our SiteInstance (and thus RVH) yet, then we can use it |
| // for this entry. We won't commit the SiteInstance to this site until the |
| // navigation commits (in DidNavigate), unless the navigation entry was |