| 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 1927b1c31666871a2f9bdf3348a63892462c9e09..bf23f53c0c390e3aa34a5ba09af501ee49200409 100644
|
| --- a/content/browser/frame_host/navigator_impl.cc
|
| +++ b/content/browser/frame_host/navigator_impl.cc
|
| @@ -139,6 +139,7 @@ NavigationController* NavigatorImpl::GetController() {
|
| void NavigatorImpl::DidStartProvisionalLoad(
|
| RenderFrameHostImpl* render_frame_host,
|
| const GURL& url,
|
| + const std::vector<GURL>& redirect_chain,
|
| const base::TimeTicks& navigation_start) {
|
| bool is_main_frame = render_frame_host->frame_tree_node()->IsMainFrame();
|
| bool is_error_page = (url.spec() == kUnreachableWebDataURL);
|
| @@ -199,12 +200,14 @@ void NavigatorImpl::DidStartProvisionalLoad(
|
| started_from_context_menu = pending_entry->has_started_from_context_menu();
|
| }
|
|
|
| + std::vector<GURL> validated_redirect_chain = redirect_chain;
|
| + for (size_t i = 0; i < validated_redirect_chain.size(); ++i)
|
| + render_process_host->FilterURL(false, &validated_redirect_chain[i]);
|
| render_frame_host->SetNavigationHandle(NavigationHandleImpl::Create(
|
| - validated_url, render_frame_host->frame_tree_node(),
|
| - is_renderer_initiated,
|
| + validated_url, validated_redirect_chain,
|
| + render_frame_host->frame_tree_node(), is_renderer_initiated,
|
| false, // is_same_page
|
| - navigation_start, pending_nav_entry_id,
|
| - started_from_context_menu));
|
| + navigation_start, pending_nav_entry_id, started_from_context_menu));
|
| }
|
|
|
| void NavigatorImpl::DidFailProvisionalLoadWithError(
|
| @@ -670,7 +673,7 @@ void NavigatorImpl::DidNavigate(
|
| delegate_->DidCommitProvisionalLoad(render_frame_host,
|
| params.url,
|
| transition_type);
|
| - navigation_handle->DidCommitNavigation(params, is_navigation_within_page,
|
| + navigation_handle->DidCommitNavigation(params, details.did_replace_entry,
|
| render_frame_host);
|
| navigation_handle.reset();
|
| }
|
|
|