Bug 13179

Summary: REGRESSION (r20410): In debug builds, loading a certain page is suspended until redisplay is forced
Product: WebKit Reporter: mitz
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bdakin, ddkilzer, hyatt
Priority: P1 Keywords: InRadar, Regression
Version: 523.x (Safari 3)   
Hardware: Mac   
OS: OS X 10.4   
URL: http://digg.com/design
Attachments:
Description Flags
Move the root->needsLayout() check to FrameView::needsLayout() hyatt: review+

mitz
Reported 2007-03-24 07:40:22 PDT
Steps to reproduce: 1) With a debug build of TOT WebKit and Safari 2.0.4, open the URL. Wait for it to finish loading. 2) Close the window. 3) Open a new window a load the same URL in it. While waiting for it to finish loading, do not move the window or Safari to the background. Expected result: The page should finish loading in step 3. Actual result: In step 3, the page does not finish loading and the window remains blank until you move the window or Safari to the background. This forces redisplay (to update active state), which makes the page resume loading and finally finish. Regression: Regressed in <http://trac.webkit.org/projects/webkit/changeset/20410>. Notes: Seems to affect only debug builds and only with Tiger Safari.
Attachments
Move the root->needsLayout() check to FrameView::needsLayout() (1.82 KB, patch)
2007-03-24 08:53 PDT, mitz
hyatt: review+
Mark Rowe (bdash)
Comment 1 2007-03-24 07:41:06 PDT
mitz
Comment 2 2007-03-24 08:44:08 PDT
I didn't debug this through, but it seems like FrameView::needsLayout() would have been a more appropriate place to add the root->needsLayout() check in r20410. That would have matched more closely the behavior prior to r20324. FrameView::layoutPending() should only be about layout scheduling.
mitz
Comment 3 2007-03-24 08:53:53 PDT
Created attachment 13797 [details] Move the root->needsLayout() check to FrameView::needsLayout() I tried the link from bug 13155 a few times to verify that this does not bring back the assertion failure.
David Kilzer (:ddkilzer)
Comment 4 2007-03-24 09:04:24 PDT
(In reply to comment #3) > I tried the link from bug 13155 a few times to verify that this does not bring > back the assertion failure. There is another way this assertion is hit that hasn't been fixed yet. (I filed a Radar for it, but didn't file a corresponding Bugzilla bug yet.) Here are the steps to reproduce. 1. Open Safari/WebKit. 2. Go to: http://ln-s.net/ 3. Click in the text field. 4. Hit Enter.
Dave Hyatt
Comment 5 2007-03-24 16:20:21 PDT
Comment on attachment 13797 [details] Move the root->needsLayout() check to FrameView::needsLayout() r=me
Dave Hyatt
Comment 6 2007-03-24 16:31:29 PDT
Landed in r20474.
Note You need to log in before you can comment on or make changes to this bug.