New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 774151 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Child frame navigation entries can be lost if pushState is called during page load

Project Member Reported by ah...@yandex-team.ru, Oct 12 2017

Issue description

To reproduce, open the attached html file, click the link, then open another page and go back. The child frame should load the same html as the parent (i.e. it should have a third-level child frame), but instead it will be empty.

This happens because when adding a new entry after pushState we call CloneAndReplace which drops frame navigation entries that correspond to child frames that have not been created yet. The same effect can be achieved by a fragment navigation or a child frame navigation that is classified as NEW_SUBFRAME.
 
pushstate_and_iframe.html
223 bytes View Download

Comment 1 by nasko@chromium.org, Oct 12 2017

Cc: creis@chromium.org clamy@chromium.org nasko@chromium.org arthurso...@chromium.org
I assume this is with PlzNavigate (aka browser-side-navigation) enabled, correct? Does it work without it?

Comment 2 by creis@chromium.org, Oct 12 2017

Context: https://chromium-review.googlesource.com/c/chromium/src/+/713474

I don't think this is PlzNav specific.  It's from the FrameNavigationEntry refactor, and is related to https://codereview.chromium.org/2161393002/ and the fast/history/same-document-iframes-changing-pushstate.html layout test.
That's right, the issue seems to repro irrespective of PlzNavigate.
Status: Assigned (was: Untriaged)

Sign in to add a comment