Bug 121009 - <iframe>: The last valid content gets loaded when history navigating.
Summary: <iframe>: The last valid content gets loaded when history navigating.
Status: ASSIGNED
Alias: None
Product: WebKit
Classification: Unclassified
Component: History (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: zalan
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-09-08 11:29 PDT by zalan
Modified: 2015-08-07 13:44 PDT (History)
6 users (show)

See Also:


Attachments
Patch (12.03 KB, patch)
2013-09-08 12:01 PDT, zalan
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from webkit-ews-14 for mac-mountainlion-wk2 (467.98 KB, application/zip)
2013-09-08 13:41 PDT, Build Bot
no flags Details
Archive of layout-test-results from webkit-ews-06 for mac-mountainlion (504.78 KB, application/zip)
2013-09-08 14:08 PDT, Build Bot
no flags Details
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion (499.62 KB, application/zip)
2013-09-08 15:10 PDT, Build Bot
no flags Details
Patch (11.65 KB, patch)
2013-09-13 09:10 PDT, zalan
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description zalan 2013-09-08 11:29:55 PDT
1. load page with an <iframe> pointing to valid content. (existing.html)
2. change the <iframe>'s url to missing content (404) and reload the page. (missing.html)
3. navigate away from the page
4. navigate back

expected result:
iframe loads the missing.html and produces 404.

actual result:
iframe loads existing.html.
Comment 1 zalan 2013-09-08 12:01:31 PDT
Created attachment 210986 [details]
Patch
Comment 2 zalan 2013-09-08 12:04:17 PDT
The patch might be too aggressive in removing existing history items and we could do something more specific, like removing/updating only when the url change triggers the error.

HistoryItem* child = parentHistoryItem->childItemWithTarget(m_frame.tree().uniqueName());
if (child && child->url() != error.failingURL())
    parentHistoryItem->removeChildItem(child);
Comment 3 Build Bot 2013-09-08 13:41:30 PDT
Comment on attachment 210986 [details]
Patch

Attachment 210986 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/1733097

New failing tests:
http/tests/navigation/post-frames-goback1-uncached.html
http/tests/navigation/forward-and-cancel.html
Comment 4 Build Bot 2013-09-08 13:41:32 PDT
Created attachment 210990 [details]
Archive of layout-test-results from webkit-ews-14 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-14  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.4
Comment 5 Build Bot 2013-09-08 14:08:19 PDT
Comment on attachment 210986 [details]
Patch

Attachment 210986 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/1734121

New failing tests:
http/tests/navigation/post-frames-goback1-uncached.html
http/tests/navigation/forward-and-cancel.html
Comment 6 Build Bot 2013-09-08 14:08:21 PDT
Created attachment 210993 [details]
Archive of layout-test-results from webkit-ews-06 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-06  Port: mac-mountainlion  Platform: Mac OS X 10.8.4
Comment 7 Build Bot 2013-09-08 15:10:12 PDT
Comment on attachment 210986 [details]
Patch

Attachment 210986 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/1728185

New failing tests:
http/tests/navigation/post-frames-goback1-uncached.html
http/tests/navigation/forward-and-cancel.html
Comment 8 Build Bot 2013-09-08 15:10:15 PDT
Created attachment 210998 [details]
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-04  Port: mac-mountainlion  Platform: Mac OS X 10.8.4
Comment 9 zalan 2013-09-13 09:10:14 PDT
Created attachment 211558 [details]
Patch