Chromium Code Reviews| 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 0610418fd1c887b2c6234a917927ef78991a3ac6..273f5cd576740e0b81b6d92d2384965187127496 100644 |
| --- a/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
| +++ b/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
| @@ -1173,7 +1173,6 @@ void FrameLoader::load(const FrameLoadRequest& passedRequest, |
| shouldPerformFragmentNavigation(request.form(), |
| request.resourceRequest().httpMethod(), |
| newLoadType, url); |
| - |
| // Perform same document navigation. |
| if (sameDocumentHistoryNavigation || sameDocumentNavigation) { |
| DCHECK(historyItem || !sameDocumentHistoryNavigation); |
| @@ -1192,6 +1191,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. The navigation is simply dropped. |
|
nasko
2017/01/13 19:36:57
Looking at the code in RenderFrameImpl::NavigateIn
arthursonzogni
2017/01/17 15:24:48
It's because the response body stream is empty.
Th
nasko
2017/01/19 00:43:35
How about JS executing "window.history.back()" or
arthursonzogni
2017/01/19 17:49:21
For renderer-initiated history-navigation. The ren
|
| + if (request.resourceRequest().isSameDocumentNavigation()) |
| + return; |
| + |
| startLoad(request, newLoadType, policy); |
| } |