Index: content/browser/frame_host/navigation_entry_impl.cc |
diff --git a/content/browser/frame_host/navigation_entry_impl.cc b/content/browser/frame_host/navigation_entry_impl.cc |
index fbf56542c1609eae1051a8926899c51de2ef4d93..1690352d5b42c5e4b33ece6dc77cb5b38d077819 100644 |
--- a/content/browser/frame_host/navigation_entry_impl.cc |
+++ b/content/browser/frame_host/navigation_entry_impl.cc |
@@ -546,13 +546,14 @@ int NavigationEntryImpl::GetHttpStatusCode() const { |
return http_status_code_; |
} |
-void NavigationEntryImpl::SetRedirectChain( |
+void NavigationEntryImpl::SetMainFrameRedirectChain( |
const std::vector<GURL>& redirect_chain) { |
- redirect_chain_ = redirect_chain; |
+ root_node()->frame_entry->set_redirect_chain(redirect_chain); |
} |
-const std::vector<GURL>& NavigationEntryImpl::GetRedirectChain() const { |
- return redirect_chain_; |
+const std::vector<GURL>& NavigationEntryImpl::GetMainFrameRedirectChain() |
+ const { |
+ return root_node()->frame_entry->redirect_chain(); |
} |
bool NavigationEntryImpl::IsRestored() const { |
@@ -632,7 +633,6 @@ std::unique_ptr<NavigationEntryImpl> NavigationEntryImpl::CloneAndReplace( |
copy->cached_display_title_ = cached_display_title_; |
// ResetForCommit: transferred_global_request_id_ |
// ResetForCommit: should_replace_entry_ |
- copy->redirect_chain_ = redirect_chain_; |
// ResetForCommit: should_clear_history_list_ |
// ResetForCommit: frame_tree_node_id_ |
// ResetForCommit: intent_received_timestamp_ |
@@ -701,7 +701,7 @@ RequestNavigationParams NavigationEntryImpl::ConstructRequestNavigationParams( |
// completed navigation (whose previous redirects don't apply). |
std::vector<GURL> redirects; |
if (ui::PageTransitionIsNewNavigation(GetTransitionType())) { |
- redirects = GetRedirectChain(); |
+ redirects = frame_entry.redirect_chain(); |
} |
int pending_offset_to_send = pending_history_list_offset; |
@@ -770,6 +770,7 @@ void NavigationEntryImpl::AddOrUpdateFrameEntry( |
int64_t document_sequence_number, |
SiteInstanceImpl* site_instance, |
scoped_refptr<SiteInstanceImpl> source_site_instance, |
+ const std::vector<GURL>& redirect_chain, |
const GURL& url, |
const Referrer& referrer, |
const PageState& page_state, |
@@ -795,8 +796,8 @@ void NavigationEntryImpl::AddOrUpdateFrameEntry( |
root_node()->frame_entry->UpdateEntry( |
frame_tree_node->unique_name(), item_sequence_number, |
document_sequence_number, site_instance, |
- std::move(source_site_instance), url, referrer, page_state, method, |
- post_id); |
+ std::move(source_site_instance), redirect_chain, url, referrer, |
+ page_state, method, post_id); |
return; |
} |
@@ -821,10 +822,10 @@ void NavigationEntryImpl::AddOrUpdateFrameEntry( |
child->children.clear(); |
// Update the existing FrameNavigationEntry (e.g., for replaceState). |
- child->frame_entry->UpdateEntry(unique_name, item_sequence_number, |
- document_sequence_number, site_instance, |
- std::move(source_site_instance), url, |
- referrer, page_state, method, post_id); |
+ child->frame_entry->UpdateEntry( |
+ unique_name, item_sequence_number, document_sequence_number, |
+ site_instance, std::move(source_site_instance), redirect_chain, url, |
+ referrer, page_state, method, post_id); |
return; |
} |
} |