Version: 53.0.2780.0
OS: All
What steps will reproduce the problem?
(0) Start Chrome with --isolate-extensions.
(1) Visit http://csreis.github.io/tests/cross-site-iframe.html
(2) Click Go same-site
(3) Add "#foo" to the URL and hit enter.
(4) Visit http://csreis.github.io/tests/
(5) Go back.
What is the expected output?
The iframe should be on "Simple page."
What do you see instead?
The iframe is on "Initial page."
This also causes some layout tests to fail:
Repro steps:
$ DISPLAY=:20 third_party/WebKit/Tools/Scripts/run-webkit-tests \
-t Release -v --additional-drt-flag=--isolate-sites-for-testing=*.is \
--no-retry-failures --additional-drt-flag=--no-sandbox \
fast/history/same-document-iframes-changing-fragment.html \
fast/history/same-document-iframes-changing-pushstate.html
The problem is that NavigationControllerImpl::RendererDidNavigateToNewPage doesn't put any subframe FrameNavigationEntries in the new NavigationEntry after an in-page navigation.
This happens with SiteIsolationPolicy::UseSubframeNavigationEntries(), whether any OOPIFs are present or not.
Comment 1 by bugdroid1@chromium.org
, Jul 26 2016