Changeset 234483 in webkit


Ignore:
Timestamp:
Aug 1, 2018 3:08:51 PM (6 years ago)
Author:
achristensen@apple.com
Message:

Move all calls to ResourceLoader::start to WebKitLegacy
https://bugs.webkit.org/show_bug.cgi?id=184946

Reviewed by Andy Estes.

Source/WebCore:

This is in preparation for moving ResourceLoader::start to WebKitLegacy along with all ResourceHandle code.
I move the code that moves m_deferredRequest into m_request into WebKitLegacy, which won't change behavior for
modern WebKit because modern WebKit never calls ResourceLoader::start, the only place where m_deferredRequest
is ever set. This won't change behavior for WebKitLegacy because the same operations happen in the same order.

  • loader/LoaderStrategy.h:
  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::setDefersLoading):

  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::setRequest):
(WebCore::ResourceLoader::deferredRequest const):
(WebCore::ResourceLoader::takeDeferredRequest):

Source/WebKit:

  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::setDefersLoading):

  • WebProcess/Network/WebLoaderStrategy.h:

Source/WebKitLegacy:

  • WebCoreSupport/WebResourceLoadScheduler.cpp:

(WebResourceLoadScheduler::setDefersLoading):

  • WebCoreSupport/WebResourceLoadScheduler.h:
Location:
trunk/Source
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r234482 r234483  
     12018-08-01  Alex Christensen  <achristensen@webkit.org>
     2
     3        Move all calls to ResourceLoader::start to WebKitLegacy
     4        https://bugs.webkit.org/show_bug.cgi?id=184946
     5
     6        Reviewed by Andy Estes.
     7
     8        This is in preparation for moving ResourceLoader::start to WebKitLegacy along with all ResourceHandle code.
     9        I move the code that moves m_deferredRequest into m_request into WebKitLegacy, which won't change behavior for
     10        modern WebKit because modern WebKit never calls ResourceLoader::start, the only place where m_deferredRequest
     11        is ever set.  This won't change behavior for WebKitLegacy because the same operations happen in the same order.
     12
     13        * loader/LoaderStrategy.h:
     14        * loader/ResourceLoader.cpp:
     15        (WebCore::ResourceLoader::setDefersLoading):
     16        * loader/ResourceLoader.h:
     17        (WebCore::ResourceLoader::setRequest):
     18        (WebCore::ResourceLoader::deferredRequest const):
     19        (WebCore::ResourceLoader::takeDeferredRequest):
     20
    1212018-08-01  Nan Wang  <n_wang@apple.com>
    222
  • trunk/Source/WebCore/loader/LoaderStrategy.h

    r232963 r234483  
    6363
    6464    virtual void remove(ResourceLoader*) = 0;
    65     virtual void setDefersLoading(ResourceLoader*, bool) = 0;
     65    virtual void setDefersLoading(ResourceLoader&, bool) = 0;
    6666    virtual void crossOriginRedirectReceived(ResourceLoader*, const URL& redirectURL) = 0;
    6767
  • trunk/Source/WebCore/loader/ResourceLoader.cpp

    r233668 r234483  
    232232    if (m_handle)
    233233        m_handle->setDefersLoading(defers);
    234     if (!defers && !m_deferredRequest.isNull()) {
    235         m_request = m_deferredRequest;
    236         m_deferredRequest = ResourceRequest();
    237         start();
    238     }
    239 
    240     platformStrategies()->loaderStrategy()->setDefersLoading(this, defers);
     234
     235    platformStrategies()->loaderStrategy()->setDefersLoading(*this, defers);
    241236}
    242237
  • trunk/Source/WebCore/loader/ResourceLoader.h

    r233668 r234483  
    134134
    135135    const ResourceRequest& request() const { return m_request; }
     136    void setRequest(ResourceRequest&& request) { m_request = WTFMove(request); }
    136137
    137138    void setDataBufferingPolicy(DataBufferingPolicy);
     
    150151
    151152    const ResourceLoaderOptions& options() const { return m_options; }
     153
     154    const ResourceRequest& deferredRequest() const { return m_deferredRequest; }
     155    ResourceRequest takeDeferredRequest() { return std::exchange(m_deferredRequest, { }); }
    152156
    153157protected:
  • trunk/Source/WebKit/ChangeLog

    r234482 r234483  
     12018-08-01  Alex Christensen  <achristensen@webkit.org>
     2
     3        Move all calls to ResourceLoader::start to WebKitLegacy
     4        https://bugs.webkit.org/show_bug.cgi?id=184946
     5
     6        Reviewed by Andy Estes.
     7
     8        * WebProcess/Network/WebLoaderStrategy.cpp:
     9        (WebKit::WebLoaderStrategy::setDefersLoading):
     10        * WebProcess/Network/WebLoaderStrategy.h:
     11
    1122018-08-01  Nan Wang  <n_wang@apple.com>
    213
  • trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp

    r233815 r234483  
    419419}
    420420
    421 void WebLoaderStrategy::setDefersLoading(ResourceLoader* resourceLoader, bool defers)
    422 {
    423     ResourceLoadIdentifier identifier = resourceLoader->identifier();
     421void WebLoaderStrategy::setDefersLoading(ResourceLoader& resourceLoader, bool defers)
     422{
     423    ResourceLoadIdentifier identifier = resourceLoader.identifier();
    424424    WebProcess::singleton().ensureNetworkProcessConnection().connection().send(Messages::NetworkConnectionToWebProcess::SetDefersLoading(identifier, defers), 0);
    425425}
  • trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.h

    r233113 r234483  
    5555
    5656    void remove(WebCore::ResourceLoader*) final;
    57     void setDefersLoading(WebCore::ResourceLoader*, bool) final;
     57    void setDefersLoading(WebCore::ResourceLoader&, bool) final;
    5858    void crossOriginRedirectReceived(WebCore::ResourceLoader*, const WebCore::URL& redirectURL) final;
    5959   
  • trunk/Source/WebKitLegacy/ChangeLog

    r233178 r234483  
     12018-08-01  Alex Christensen  <achristensen@webkit.org>
     2
     3        Move all calls to ResourceLoader::start to WebKitLegacy
     4        https://bugs.webkit.org/show_bug.cgi?id=184946
     5
     6        Reviewed by Andy Estes.
     7
     8        * WebCoreSupport/WebResourceLoadScheduler.cpp:
     9        (WebResourceLoadScheduler::setDefersLoading):
     10        * WebCoreSupport/WebResourceLoadScheduler.h:
     11
    1122018-06-25  Keith Rollin  <krollin@apple.com>
    213        Unreviewed, rolling out r233087.
  • trunk/Source/WebKitLegacy/WebCoreSupport/WebResourceLoadScheduler.cpp

    r232198 r234483  
    200200}
    201201
    202 void WebResourceLoadScheduler::setDefersLoading(ResourceLoader*, bool)
    203 {
     202void WebResourceLoadScheduler::setDefersLoading(ResourceLoader& loader, bool defers)
     203{
     204    if (!defers && !loader.deferredRequest().isNull()) {
     205        loader.setRequest(loader.takeDeferredRequest());
     206        loader.start();
     207    }
    204208}
    205209
  • trunk/Source/WebKitLegacy/WebCoreSupport/WebResourceLoadScheduler.h

    r231282 r234483  
    5555
    5656    void remove(WebCore::ResourceLoader*) final;
    57     void setDefersLoading(WebCore::ResourceLoader*, bool) final;
     57    void setDefersLoading(WebCore::ResourceLoader&, bool) final;
    5858    void crossOriginRedirectReceived(WebCore::ResourceLoader*, const WebCore::URL& redirectURL) final;
    5959   
Note: See TracChangeset for help on using the changeset viewer.