Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1287)

Unified Diff: content/renderer/history_controller.cc

Issue 1965003002: Don't update subframes on parent frame commits. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2704
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/browser/frame_host/navigation_controller_impl_browsertest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/history_controller.cc
diff --git a/content/renderer/history_controller.cc b/content/renderer/history_controller.cc
index ae04b87791623d9dd926f15ef030db09c3e218e5..71c8ff0fb32f1730b3d01f0421f265ed86e880c5 100644
--- a/content/renderer/history_controller.cc
+++ b/content/renderer/history_controller.cc
@@ -145,6 +145,11 @@ void HistoryController::RecursiveGoToEntry(
new_item.documentSequenceNumber() ==
old_item.documentSequenceNumber()) {
same_document_loads.push_back(std::make_pair(frame, new_item));
+
+ // Returning here (and omitting child frames which have also changed) is
+ // wrong, but not returning here is worse. See the discussion in
+ // NavigationControllerImpl::FindFramesToNavigate for more information.
+ return;
} else {
different_document_loads.push_back(std::make_pair(frame, new_item));
// For a different document, the subframes will be destroyed, so there's
« no previous file with comments | « content/browser/frame_host/navigation_controller_impl_browsertest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698