Index: third_party/WebKit/Source/core/loader/FrameLoader.cpp |
diff --git a/third_party/WebKit/Source/core/loader/FrameLoader.cpp b/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
index dafe916b9563d86da938dbe4cea8e5ddcac4a5ee..73c328742058e1b5a715cada0e75a23ba71b0dd8 100644 |
--- a/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
+++ b/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
@@ -1183,6 +1183,14 @@ void FrameLoader::load(const FrameLoadRequest& passedRequest, |
return; |
} |
+ // PlzNavigate |
+ // If the loader classifies this navigation as a different document navigation |
+ // while the browser intended the navigation to be same-document, it means |
+ // that a different navigation must have committed while the IPC was sent. |
+ // This navigation is no more same-document and must be relaunched. |
+ if (request.resourceRequest().isSameDocumentNavigation()) |
+ request.resourceRequest().setCheckForBrowserSideNavigation(true); |
+ |
startLoad(request, newLoadType, policy); |
} |