Bug 41166 - Set an initial URL in Document's constructor
Summary: Set an initial URL in Document's constructor
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC OS X 10.5
: P2 Normal
Assignee: Nate Chapin
Depends on: 41179
Blocks: 41165
  Show dependency treegraph
Reported: 2010-06-24 10:20 PDT by Nate Chapin
Modified: 2010-06-25 10:55 PDT (History)
4 users (show)

See Also:

Patch (28.25 KB, patch)
2010-06-24 10:37 PDT, Nate Chapin
no flags Details | Formatted Diff | Diff
patch2 (28.38 KB, patch)
2010-06-24 16:59 PDT, Nate Chapin
abarth: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
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]
Comment 2 Adam Barth 2010-06-24 10:53:33 PDT
Comment on attachment 59673 [details]

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]

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]

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]

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