Bug 59223

Summary: REGRESSION (r82185): iframe not displayed after navigation back to cached page
Product: WebKit Reporter: Beth Dakin <bdakin>
Component: Layout and RenderingAssignee: Beth Dakin <bdakin>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, bdakin, eric, webkit.review.bot
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Attachments:
Description Flags
Patch mjs: review+

Description Beth Dakin 2011-04-22 12:51:57 PDT
* SUMMARY
After navigating back to a page in the page cache with an iframe, the iframe is not loaded.

* STEPS TO REPRODUCE
1. Navigate to <data:text/html,%3ciframe%20src=%22http://webkit.org/%22%3E%3C/iframe%3E>
2. Navigate in the same tab to <about:blank>
3. Go back

* RESULTS
The iframe is now empty

* NOTES
Only happens if the back/forward cache is enabled.

This is a regression from http://trac.webkit.org/changeset/82185

Patch forthcoming!

<rdar://problem/9323763>
Comment 1 Beth Dakin 2011-04-22 13:04:44 PDT
Created attachment 90745 [details]
Patch

I made a test that works for this in Safari, but it is not a valid DRT test since it passes in DRT even without my patch.
Comment 2 Maciej Stachowiak 2011-04-22 14:54:27 PDT
Comment on attachment 90745 [details]
Patch

What's different about DRT? IS it the fact that DRT doesn't use overlay scrollers? I'd suggest at least adding it as a manual test so we don't forget about it. r=me
Comment 3 Beth Dakin 2011-04-22 14:59:12 PDT
(In reply to comment #2)
> (From update of attachment 90745 [details])
> What's different about DRT? IS it the fact that DRT doesn't use overlay scrollers? I'd suggest at least adding it as a manual test so we don't forget about it. r=me

No, the bug occurs with all types of scrollbars. For some reason DRT just lays out and paints the iframe after going back to the page, which is not true in Safar/WebKit without this patch. I thought it would at least work as a pixel test, but it does not. There must be something sufficiently different about about DRT's back mechanism and "back" in the browser that causes the necessary layout to happen. I can add it as a manual test though.
Comment 4 Beth Dakin 2011-04-22 15:03:37 PDT
Do we have manual tests checked in anymore? I can't seem to find them.
Comment 5 Beth Dakin 2011-04-22 15:11:02 PDT
Committed the change with revision 84688. Not sure if there's a place for my still-manual test, so I will just hold onto it for now.
Comment 6 Alexey Proskuryakov 2011-04-22 15:34:50 PDT
> Do we have manual tests checked in anymore? I can't seem to find them.

Source/WebCore/manual-tests. Not that anyone ever runs those.
Comment 7 Beth Dakin 2011-04-22 15:37:13 PDT
(In reply to comment #6)
> > Do we have manual tests checked in anymore? I can't seem to find them.
> 
> Source/WebCore/manual-tests. Not that anyone ever runs those.

WebCore! That's where they are hiding. Yeah, it's not super useful, but I will check it in there anyway.
Comment 8 Beth Dakin 2011-04-22 15:43:08 PDT
Manual test added with revision 84694.
Comment 9 WebKit Review Bot 2011-04-22 16:04:10 PDT
http://trac.webkit.org/changeset/84688 might have broken SnowLeopard Intel Release (Build)
Comment 10 WebKit Review Bot 2011-04-22 16:04:32 PDT
http://trac.webkit.org/changeset/84694 might have broken SnowLeopard Intel Release (Build)
Comment 11 WebKit Review Bot 2011-04-22 16:04:36 PDT
http://trac.webkit.org/changeset/84695 might have broken SnowLeopard Intel Release (Build)