Index: content/browser/frame_host/navigation_controller_impl.cc |
diff --git a/content/browser/frame_host/navigation_controller_impl.cc b/content/browser/frame_host/navigation_controller_impl.cc |
index fe5cdcd0f764db3adaa7b8a7932f6907fb31d66d..57ca3613a0a79afe85d72e2bc914e81f5e392ece 100644 |
--- a/content/browser/frame_host/navigation_controller_impl.cc |
+++ b/content/browser/frame_host/navigation_controller_impl.cc |
@@ -1376,9 +1376,10 @@ bool NavigationControllerImpl::IsURLInPageNavigation( |
const GURL& url, |
bool renderer_says_in_page, |
RenderFrameHost* rfh) const { |
+ RenderFrameHostImpl* rfhi = static_cast<RenderFrameHostImpl*>(rfh); |
GURL last_committed_url; |
if (rfh->GetParent()) { |
- last_committed_url = rfh->GetLastCommittedURL(); |
Charlie Reis
2016/06/03 19:20:35
This is wrong after a process swap, when the newly
Avi (use Gerrit)
2016/06/03 20:26:57
Interesting; worthy of a comment why we don't do i
Charlie Reis
2016/06/03 20:53:28
Good idea. Done.
|
+ last_committed_url = rfhi->frame_tree_node()->current_url(); |
} else { |
NavigationEntry* last_committed = GetLastCommittedEntry(); |
// There must be a last-committed entry to compare URLs to. TODO(avi): When |
@@ -1390,9 +1391,8 @@ bool NavigationControllerImpl::IsURLInPageNavigation( |
} |
WebPreferences prefs = rfh->GetRenderViewHost()->GetWebkitPreferences(); |
- const url::Origin& committed_origin = static_cast<RenderFrameHostImpl*>(rfh) |
- ->frame_tree_node() |
- ->current_origin(); |
+ const url::Origin& committed_origin = |
+ rfhi->frame_tree_node()->current_origin(); |
bool is_same_origin = last_committed_url.is_empty() || |
// TODO(japhet): We should only permit navigations |
// originating from about:blank to be in-page if the |
@@ -1854,6 +1854,8 @@ void NavigationControllerImpl::FindFramesToNavigate( |
DCHECK(pending_entry_); |
DCHECK_GE(last_committed_entry_index_, 0); |
FrameNavigationEntry* new_item = pending_entry_->GetFrameEntry(frame); |
+ // TODO(creis): Store the last committed FrameNavigationEntry to use here, |
+ // rather than assuming the NavigationEntry has up to date info on subframes. |
Charlie Reis
2016/06/03 19:20:35
I decided to punt this for another CL, since it wi
|
FrameNavigationEntry* old_item = |
GetLastCommittedEntry()->GetFrameEntry(frame); |
if (!new_item) |