Bug 66165 - FrameLoaderClient::transferLoadingResourceFromPage does not have enough parameters
: FrameLoaderClient::transferLoadingResourceFromPage does not have enough param...
Status: RESOLVED FIXED
Product: WebKit
Classification: Unclassified
Component: WebCore Misc.
: 528+ (Nightly build)
: All All
: P2 Normal
Assigned To: Dmitry Titov
:
Depends on:
Blocks: 66163
  Show dependency treegraph
 
Reported: 2011-08-12 14:04 PDT by Dmitry Titov
Modified: 2011-08-15 15:49 PDT (History)
9 users (show)

See Also:


Attachments
Patch (37.67 KB, patch)
2011-08-12 14:26 PDT, Dmitry Titov
gns: commit‑queue-
Details | Formatted Diff | Diff
Fixed Gtk build error. (37.66 KB, patch)
2011-08-12 15:46 PDT, Dmitry Titov
webkit.review.bot: commit‑queue-
Details | Formatted Diff | Diff
Fixed Mac build error (38.84 KB, patch)
2011-08-15 11:49 PDT, Dmitry Titov
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitry Titov 2011-08-12 14:04:28 PDT
Existing FrameLoaderClient::transferLoadingResourceFromPage notification is not very useful because it comes with DocumentLoader, and in case of subresources does not give enough information to the embedder to redirect the network notifications properly.

The solution is to pass ResourceLoader of each loading resource into this notification. ResourceLoader wraps all the information about current load, including embedder- and platform- specific (via ResourceHandle) which should give the embedder all the info it needs to associate the ongoing load requests with the new top-level WebFrame/WebView objects.
Comment 1 Dmitry Titov 2011-08-12 14:26:10 PDT
Created attachment 103816 [details]
Patch

The patch changes signature of FrameLoaderClient method from:
        virtual void transferLoadingResourceFromPage(unsigned long identifier, DocumentLoader*, const ResourceRequest&, Page* oldPage) = 0;
to:
        virtual void transferLoadingResourceFromPage(ResourceLoader*, const ResourceRequest&, Page* oldPage) = 0;

The old parameters 'identifier' and 'documentLoader' are accessible from ResourceLoader

Also fixed a bug when this notification was invoked in DocumentLoader with the same ResourceRequest for all subresources.
Comment 2 David Levin 2011-08-12 14:32:10 PDT
To my memory Adam and Nate have done many changes in this area.

btw, no r? yet.
Comment 3 Gustavo Noronha (kov) 2011-08-12 15:39:09 PDT
Comment on attachment 103816 [details]
Patch

Attachment 103816 [details] did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/9378024
Comment 4 Dmitry Titov 2011-08-12 15:46:14 PDT
Created attachment 103831 [details]
Fixed Gtk build error.
Comment 5 WebKit Review Bot 2011-08-12 18:27:47 PDT
Comment on attachment 103831 [details]
Fixed Gtk build error.

Attachment 103831 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/9378071
Comment 6 Dmitry Titov 2011-08-15 11:49:25 PDT
Created attachment 103937 [details]
Fixed Mac build error
Comment 7 Dmitry Titov 2011-08-15 15:49:50 PDT
Comment on attachment 103937 [details]
Fixed Mac build error

Clearing flags on attachment: 103937

Committed r93066: <http://trac.webkit.org/changeset/93066>
Comment 8 Dmitry Titov 2011-08-15 15:49:55 PDT
All reviewed patches have been landed.  Closing bug.