Bug 41166

Summary: Set an initial URL in Document's constructor
Product: WebKit Reporter: Nate Chapin <japhet>
Component: WebCore Misc.Assignee: Nate Chapin <japhet>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, cjerdonek, eric, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Bug Depends on: 41179    
Bug Blocks: 41165    
Attachments:
Description Flags
Patch
none
patch2 abarth: review+

Description Nate Chapin 2010-06-24 10:20:03 PDT
There is one case where Document::url() and FrameLoader::url() are not the same.  During the initialization of a new document, the Document's url has not yet been set and we use FrameLoader's url in Document::initSecurityContext().  By providing a KURL in Document's constructor, we can remove this unnecessary difference and obsolete FrameLoader::url().
Comment 1 Nate Chapin 2010-06-24 10:37:53 PDT
Created attachment 59673 [details]
Patch
Comment 2 Adam Barth 2010-06-24 10:53:33 PDT
Comment on attachment 59673 [details]
Patch

Nice.
Comment 3 WebKit Review Bot 2010-06-24 13:57:07 PDT
http://trac.webkit.org/changeset/61783 might have broken Qt Linux Release
Comment 4 Nate Chapin 2010-06-24 16:59:08 PDT
Created attachment 59709 [details]
patch2

There are just two differences from the first patch:
1. Call setURL in Document::Document() if either a non-null Frame or a non-empty KURL was passed in.  This ensures we handle XMLHttpRequests without a Frame correctly, as well as Documents with a Frame that should be defaulted to "about:blank" instead of "".
2. Pass a non-empty KURL to Document::create() in XMLHttpRequest.cpp and remove the following Document::setURL() call.
Comment 5 Adam Barth 2010-06-24 17:24:39 PDT
Comment on attachment 59709 [details]
patch2

Ok.  This makes more sense than the earlier diff.  Thanks.
Comment 6 Adam Barth 2010-06-24 17:26:03 PDT
Presumably we have a test for the URL of an XMLHttpRequest document?  I'm not sure how you could get an empty URL in there given that it would be completed w.r.t. a base URL.
Comment 7 Eric Seidel (no email) 2010-06-24 21:04:39 PDT
Comment on attachment 59673 [details]
Patch

Cleared Adam Barth's review+ from obsolete attachment 59673 [details] so that this bug does not appear in http://webkit.org/pending-commit.
Comment 8 Nate Chapin 2010-06-25 10:55:01 PDT
http://trac.webkit.org/changeset/61868