Speculative loading sometimes happens too early and is missing important login cookies.
Created attachment 383767 [details]
Created attachment 383784 [details]
Comment on attachment 383784 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=383784&action=review
> + void retrieve(const WebCore::ResourceRequest&, const GlobalFrameID&, bool isTopMainResourceLoad, RetrieveCompletionHandler&&);
This information seems to be already available in ResourceRequest as oddly named isTopSite() bit. Can we avoid duplicating information?
Also the parameter should be an enum.
> + void registerMainResourceLoadResponse(const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, const GlobalFrameID&);
This should probably be in #if ENABLE(NETWORK_CACHE_SPECULATIVE_REVALIDATION) section.
This sort of stuff points to speculative load being implemented in a wrong layer. Cache API tries not to be a collection of random functions, but things that actually make sense for a class called Cache. This doesn't really belong.
Created attachment 384153 [details]
Created attachment 384156 [details]
Comment on attachment 384156 [details]
Clearing flags on attachment: 384156
Committed r252778: <https://trac.webkit.org/changeset/252778>
All reviewed patches have been landed. Closing bug.