My change to make Frames start with an empty document instead of creating one on demand caused some regressions (mostly in areas of the code that are not under automated test). I still think it is a fundamentally sound change and I'll try to fix the open regressions ASAP (hopefully I can figure out how to make test cases for these as well):

REGRESSION (r21367): Local css ignored until page is refreshed
http://bugs.webkit.org/show_bug.cgi?id=13661

REGRESSION: Load never completes for nonexistent unqualified domain names
http://bugs.webkit.org/show_bug.cgi?id=13683

REGRESSION: Assertion failure in WebCore::FrameLoader::restoreScrollPositionAndViewState() going back from fark.com Photoshop contest
http://bugs.webkit.org/show_bug.cgi?id=13684

REGRESSION: Crash when starting Webkit with JavaScript disabled
http://bugs.webkit.org/show_bug.cgi?id=13691

REGRESSION: Progress bar never completes on link click that downloads
http://bugs.webkit.org/show_bug.cgi?id=13694


This also broke the Qt and Gdk ports. I will help to fix those but I could use someone who can easily build and test these ports to help me out. I think there are two basic problems:

1) Frame::init() needs to be called every time a new Frame is allocated, after it is attached to the frame tree.

2) FrameLoaderClient::committedLoad must ensure it calls FrameLoader::setEncoding before passing the first data chunk to the document. I think this is actually a remaining architectural problem with the loader, we are counting on the client to do too much in this case to have things work properly - I'd like to unwind this logic at some point to not rely on the client so much. In the short run, just adding the call is likely to just work.


Sorry about the breakage. I think this change will still be good in the long run.

Regards,
Maciej

_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to