Chromium Code Reviews| Index: content/browser/frame_host/navigator_impl.cc |
| diff --git a/content/browser/frame_host/navigator_impl.cc b/content/browser/frame_host/navigator_impl.cc |
| index d7c1ca0420e6b875a8f337b9aadd46d5fa618030..0c593ce13229fab353234f7bd0eaab7601428729 100644 |
| --- a/content/browser/frame_host/navigator_impl.cc |
| +++ b/content/browser/frame_host/navigator_impl.cc |
| @@ -647,9 +647,13 @@ void NavigatorImpl::RequestOpenURL(RenderFrameHostImpl* render_frame_host, |
| WindowOpenDisposition disposition, |
| bool should_replace_current_entry, |
| bool user_gesture) { |
| - // This call only makes sense for subframes if OOPIFs are possible. |
| + // This call only makes sense for subframes if OOPIFs are possible, or if |
| + // FrameNavigationEntries are being used. The latter case happens when the |
| + // history item for a subframe is not found during a history navigation, and |
| + // the subframe needs to navigate to the fallback url. |
| DCHECK(!render_frame_host->GetParent() || |
| - SiteIsolationPolicy::AreCrossProcessFramesPossible()); |
| + SiteIsolationPolicy::AreCrossProcessFramesPossible() || |
| + SiteIsolationPolicy::UseSubframeNavigationEntries()); |
|
Charlie Reis
2016/04/15 17:36:42
nit: This should just be UseSubframeNavigationEntr
clamy
2016/04/25 11:05:34
Removed this block due to code change in navigator
|
| SiteInstance* current_site_instance = render_frame_host->frame_tree_node() |
| ->current_frame_host() |
| @@ -670,7 +674,8 @@ void NavigatorImpl::RequestOpenURL(RenderFrameHostImpl* render_frame_host, |
| // Send the navigation to the current FrameTreeNode if it's destined for a |
| // subframe in the current tab. We'll assume it's for the main frame |
| // (possibly of a new or different WebContents) otherwise. |
| - if (SiteIsolationPolicy::AreCrossProcessFramesPossible() && |
| + if ((SiteIsolationPolicy::AreCrossProcessFramesPossible() || |
| + SiteIsolationPolicy::UseSubframeNavigationEntries()) && |
|
Charlie Reis
2016/04/15 17:36:42
Same.
clamy
2016/04/25 11:05:34
Done.
|
| disposition == CURRENT_TAB && render_frame_host->GetParent()) { |
| frame_tree_node_id = |
| render_frame_host->frame_tree_node()->frame_tree_node_id(); |