Changeset 246401 in webkit


Ignore:
Timestamp:
Jun 13, 2019 7:06:18 AM (5 years ago)
Author:
commit-queue@webkit.org
Message:

[curl] Remove member objects of CurlRequest not to share by different threads.
https://bugs.webkit.org/show_bug.cgi?id=198747

Patch by Takashi Komori <Takashi.Komori@sony.com> on 2019-06-13
Reviewed by Fujii Hironori.

Source/WebCore:

Removed m_certificateInfo and m_networkLoadMetrics.
Before patch those objects were updated by different threads.

No tests needed, no functionality changes.

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownload::curlDidReceiveResponse):
(WebCore::CurlDownload::curlDidReceiveBuffer):
(WebCore::CurlDownload::curlDidComplete):
(WebCore::CurlDownload::curlDidFailWithError):

  • platform/network/curl/CurlDownload.h:
  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::start):
(WebCore::CurlRequest::didReceiveHeader):
(WebCore::CurlRequest::didCompleteTransfer):
(WebCore::CurlRequest::invokeDidReceiveResponse):
(WebCore::CurlRequest::networkLoadMetrics):
(WebCore::CurlRequest::updateNetworkLoadMetrics): Deleted.

  • platform/network/curl/CurlRequest.h:

(WebCore::CurlRequest::setStartTime):
(WebCore::CurlRequest::certificateInfo const): Deleted.
(WebCore::CurlRequest::networkLoadMetrics const): Deleted.

  • platform/network/curl/CurlRequestClient.h:
  • platform/network/curl/CurlResourceHandleDelegate.cpp:

(WebCore::CurlResourceHandleDelegate::curlDidSendData):
(WebCore::CurlResourceHandleDelegate::curlDidReceiveResponse):
(WebCore::CurlResourceHandleDelegate::curlDidReceiveBuffer):
(WebCore::CurlResourceHandleDelegate::curlDidComplete):
(WebCore::CurlResourceHandleDelegate::curlDidFailWithError):

  • platform/network/curl/CurlResourceHandleDelegate.h:
  • platform/network/curl/CurlResponse.h:

(WebCore::CurlResponse::isolatedCopy const):

  • platform/network/curl/ResourceResponseCurl.cpp:

(WebCore::ResourceResponse::ResourceResponse):

Source/WebKit:

  • NetworkProcess/curl/NetworkDataTaskCurl.cpp:

(WebKit::NetworkDataTaskCurl::curlDidReceiveResponse):
(WebKit::NetworkDataTaskCurl::curlDidComplete):
(WebKit::NetworkDataTaskCurl::curlDidFailWithError):

  • NetworkProcess/curl/NetworkDataTaskCurl.h:
Location:
trunk/Source
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r246400 r246401  
     12019-06-13  Takashi Komori  <Takashi.Komori@sony.com>
     2
     3        [curl] Remove member objects of CurlRequest not to share by different threads.
     4        https://bugs.webkit.org/show_bug.cgi?id=198747
     5
     6        Reviewed by Fujii Hironori.
     7
     8        Removed m_certificateInfo and m_networkLoadMetrics.
     9        Before patch those objects were updated by different threads.
     10
     11        No tests needed, no functionality changes.
     12
     13        * platform/network/curl/CurlDownload.cpp:
     14        (WebCore::CurlDownload::curlDidReceiveResponse):
     15        (WebCore::CurlDownload::curlDidReceiveBuffer):
     16        (WebCore::CurlDownload::curlDidComplete):
     17        (WebCore::CurlDownload::curlDidFailWithError):
     18        * platform/network/curl/CurlDownload.h:
     19        * platform/network/curl/CurlRequest.cpp:
     20        (WebCore::CurlRequest::start):
     21        (WebCore::CurlRequest::didReceiveHeader):
     22        (WebCore::CurlRequest::didCompleteTransfer):
     23        (WebCore::CurlRequest::invokeDidReceiveResponse):
     24        (WebCore::CurlRequest::networkLoadMetrics):
     25        (WebCore::CurlRequest::updateNetworkLoadMetrics): Deleted.
     26        * platform/network/curl/CurlRequest.h:
     27        (WebCore::CurlRequest::setStartTime):
     28        (WebCore::CurlRequest::certificateInfo const): Deleted.
     29        (WebCore::CurlRequest::networkLoadMetrics const): Deleted.
     30        * platform/network/curl/CurlRequestClient.h:
     31        * platform/network/curl/CurlResourceHandleDelegate.cpp:
     32        (WebCore::CurlResourceHandleDelegate::curlDidSendData):
     33        (WebCore::CurlResourceHandleDelegate::curlDidReceiveResponse):
     34        (WebCore::CurlResourceHandleDelegate::curlDidReceiveBuffer):
     35        (WebCore::CurlResourceHandleDelegate::curlDidComplete):
     36        (WebCore::CurlResourceHandleDelegate::curlDidFailWithError):
     37        * platform/network/curl/CurlResourceHandleDelegate.h:
     38        * platform/network/curl/CurlResponse.h:
     39        (WebCore::CurlResponse::isolatedCopy const):
     40        * platform/network/curl/ResourceResponseCurl.cpp:
     41        (WebCore::ResourceResponse::ResourceResponse):
     42
    1432019-06-13  Zan Dobersek  <zdobersek@igalia.com>
    244
  • trunk/Source/WebCore/platform/network/curl/CurlDownload.cpp

    r228577 r246401  
    8181}
    8282
    83 void CurlDownload::curlDidReceiveResponse(CurlRequest& request, const CurlResponse& response)
     83void CurlDownload::curlDidReceiveResponse(CurlRequest& request, CurlResponse&& response)
    8484{
    8585    ASSERT(isMainThread());
     
    102102
    103103
    104 void CurlDownload::curlDidReceiveBuffer(CurlRequest& request, Ref<SharedBuffer>&& buffer)
     104void CurlDownload::curlDidReceiveBuffer(CurlRequest&, Ref<SharedBuffer>&& buffer)
    105105{
    106106    ASSERT(isMainThread());
     
    113113}
    114114
    115 void CurlDownload::curlDidComplete(CurlRequest& request)
     115void CurlDownload::curlDidComplete(CurlRequest& request, NetworkLoadMetrics&&)
    116116{
    117117    ASSERT(isMainThread());
     
    129129}
    130130
    131 void CurlDownload::curlDidFailWithError(CurlRequest& request, const ResourceError& resourceError)
     131void CurlDownload::curlDidFailWithError(CurlRequest& request, ResourceError&&, CertificateInfo&&)
    132132{
    133133    ASSERT(isMainThread());
  • trunk/Source/WebCore/platform/network/curl/CurlDownload.h

    r238263 r246401  
    7272    Ref<CurlRequest> createCurlRequest(ResourceRequest&);
    7373    void curlDidSendData(CurlRequest&, unsigned long long, unsigned long long) override { }
    74     void curlDidReceiveResponse(CurlRequest&, const CurlResponse&) override;
     74    void curlDidReceiveResponse(CurlRequest&, CurlResponse&&) override;
    7575    void curlDidReceiveBuffer(CurlRequest&, Ref<SharedBuffer>&&) override;
    76     void curlDidComplete(CurlRequest&) override;
    77     void curlDidFailWithError(CurlRequest&, const ResourceError&) override;
     76    void curlDidComplete(CurlRequest&, NetworkLoadMetrics&&) override;
     77    void curlDidFailWithError(CurlRequest&, ResourceError&&, CertificateInfo&&) override;
    7878
    7979    bool shouldRedirectAsGET(const ResourceRequest&, bool crossOrigin);
  • trunk/Source/WebCore/platform/network/curl/CurlRequest.cpp

    r246143 r246401  
    2929#if USE(CURL)
    3030
     31#include "CertificateInfo.h"
    3132#include "CurlRequestClient.h"
    3233#include "CurlRequestScheduler.h"
    3334#include "MIMETypeRegistry.h"
     35#include "NetworkLoadMetrics.h"
    3436#include "ResourceError.h"
    3537#include "SharedBuffer.h"
     
    108110
    109111    if (std::isnan(m_requestStartTime))
    110         m_requestStartTime = MonotonicTime::now();
     112        m_requestStartTime = MonotonicTime::now().isolatedCopy();
    111113
    112114    if (url.isLocalFile())
     
    351353        m_response.httpVersion = *version;
    352354
    353     updateNetworkLoadMetrics();
    354 
    355355    if (m_response.availableProxyAuth)
    356356        CurlContext::singleton().setProxyAuthMethod(m_response.availableProxyAuth);
    357357
    358358    if (auto info = m_curlHandle->certificateInfo())
    359         m_certificateInfo = *info;
     359        m_response.certificateInfo = WTFMove(*info);
     360
     361    m_response.networkLoadMetrics = networkLoadMetrics();
    360362
    361363    if (m_enableMultipart)
     
    452454            m_multipartHandle->didComplete();
    453455
    454         updateNetworkLoadMetrics();
     456        auto metrics = networkLoadMetrics();
    455457
    456458        finalizeTransfer();
    457         callClient([this, protectedThis = makeRef(*this)](CurlRequest& request, CurlRequestClient& client) {
    458             m_networkLoadMetrics.responseEnd = MonotonicTime::now() - m_requestStartTime;
    459             m_networkLoadMetrics.markComplete();
    460 
    461             client.curlDidComplete(request);
     459        callClient([requestStartTime = m_requestStartTime.isolatedCopy(), networkLoadMetrics = WTFMove(metrics)](CurlRequest& request, CurlRequestClient& client) mutable {
     460            networkLoadMetrics.responseEnd = MonotonicTime::now() - requestStartTime;
     461            networkLoadMetrics.markComplete();
     462
     463            client.curlDidComplete(request, WTFMove(networkLoadMetrics));
    462464        });
    463465    } else {
     
    466468        if (auto sslErrors = m_curlHandle->sslErrors())
    467469            resourceError.setSslErrors(sslErrors);
     470
     471        CertificateInfo certificateInfo;
    468472        if (auto info = m_curlHandle->certificateInfo())
    469             m_certificateInfo = *info;
     473            certificateInfo = WTFMove(*info);
    470474
    471475        finalizeTransfer();
    472         callClient([error = resourceError.isolatedCopy()](CurlRequest& request, CurlRequestClient& client) {
    473             client.curlDidFailWithError(request, error);
     476        callClient([error = WTFMove(resourceError), certificateInfo = WTFMove(certificateInfo)](CurlRequest& request, CurlRequestClient& client) mutable {
     477            client.curlDidFailWithError(request, WTFMove(error), WTFMove(certificateInfo));
    474478        });
    475479    }
     
    605609    m_actionAfterInvoke = behaviorAfterInvoke;
    606610
    607     callClient([response = response.isolatedCopy()](CurlRequest& request, CurlRequestClient& client) {
    608         client.curlDidReceiveResponse(request, response);
     611    // FIXME: Replace this isolatedCopy with WTFMove.
     612    callClient([response = response.isolatedCopy()](CurlRequest& request, CurlRequestClient& client) mutable {
     613        client.curlDidReceiveResponse(request, WTFMove(response));
    609614    });
    610615}
     
    716721}
    717722
    718 void CurlRequest::updateNetworkLoadMetrics()
    719 {
     723NetworkLoadMetrics CurlRequest::networkLoadMetrics()
     724{
     725    ASSERT(m_curlHandle);
     726
    720727    auto domainLookupStart = m_performStartTime - m_requestStartTime;
    721 
    722     if (auto metrics = m_curlHandle->getNetworkLoadMetrics(domainLookupStart)) {
    723         m_networkLoadMetrics = *metrics;
    724 
    725         if (m_captureExtraMetrics) {
    726             m_curlHandle->addExtraNetworkLoadMetrics(m_networkLoadMetrics);
    727             m_networkLoadMetrics.requestHeaders = m_requestHeaders;
    728             m_networkLoadMetrics.responseBodyDecodedSize = m_totalReceivedSize;
    729         }
    730     }
     728    auto networkLoadMetrics = m_curlHandle->getNetworkLoadMetrics(domainLookupStart);
     729    if (!networkLoadMetrics)
     730        return NetworkLoadMetrics();
     731
     732    if (m_captureExtraMetrics) {
     733        m_curlHandle->addExtraNetworkLoadMetrics(*networkLoadMetrics);
     734        networkLoadMetrics->requestHeaders = m_requestHeaders;
     735        networkLoadMetrics->responseBodyDecodedSize = m_totalReceivedSize;
     736    }
     737
     738    return WTFMove(*networkLoadMetrics);
    731739}
    732740
  • trunk/Source/WebCore/platform/network/curl/CurlRequest.h

    r246143 r246401  
    2626#pragma once
    2727
    28 #include "CertificateInfo.h"
    2928#include "CurlFormDataStream.h"
    3029#include "CurlMultipartHandle.h"
     
    3231#include "CurlRequestSchedulerClient.h"
    3332#include "CurlResponse.h"
    34 #include "NetworkLoadMetrics.h"
    3533#include "ProtectionSpace.h"
    3634#include "ResourceRequest.h"
     
    4341
    4442class CurlRequestClient;
     43class NetworkLoadMetrics;
    4544class ResourceError;
    4645class SharedBuffer;
     
    7776    bool isServerTrustEvaluationDisabled() { return m_shouldDisableServerTrustEvaluation; }
    7877    void disableServerTrustEvaluation() { m_shouldDisableServerTrustEvaluation = true; }
    79     void setStartTime(const MonotonicTime& startTime) { m_requestStartTime = startTime; }
     78    void setStartTime(const MonotonicTime& startTime) { m_requestStartTime = startTime.isolatedCopy(); }
    8079
    8180    void start();
     
    9897    void enableDownloadToFile();
    9998    const String& getDownloadedFilePath();
    100 
    101     const CertificateInfo& certificateInfo() const { return m_certificateInfo; }
    102     const NetworkLoadMetrics& networkLoadMetrics() const { return m_networkLoadMetrics; }
    10399
    104100private:
     
    155151    bool isHandlePaused() const;
    156152
    157     void updateNetworkLoadMetrics();
     153    NetworkLoadMetrics networkLoadMetrics();
    158154
    159155    // Download
     
    212208    FileSystem::PlatformFileHandle m_downloadFileHandle { FileSystem::invalidPlatformFileHandle };
    213209
    214     CertificateInfo m_certificateInfo;
    215210    bool m_captureExtraMetrics;
    216     NetworkLoadMetrics m_networkLoadMetrics;
    217211    HTTPHeaderMap m_requestHeaders;
    218212    MonotonicTime m_requestStartTime { MonotonicTime::nan() };
  • trunk/Source/WebCore/platform/network/curl/CurlRequestClient.h

    r228577 r246401  
    3030namespace WebCore {
    3131
     32class CertificateInfo;
    3233class CurlRequest;
    3334class CurlResponse;
     35class NetworkLoadMetrics;
    3436class ResourceError;
    3537class SharedBuffer;
     
    4143
    4244    virtual void curlDidSendData(CurlRequest&, unsigned long long bytesSent, unsigned long long totalBytesToBeSent) = 0;
    43     virtual void curlDidReceiveResponse(CurlRequest&, const CurlResponse&) = 0;
     45    virtual void curlDidReceiveResponse(CurlRequest&, CurlResponse&&) = 0;
    4446    virtual void curlDidReceiveBuffer(CurlRequest&, Ref<SharedBuffer>&&) = 0;
    45     virtual void curlDidComplete(CurlRequest&) = 0;
    46     virtual void curlDidFailWithError(CurlRequest&, const ResourceError&) = 0;
     47    virtual void curlDidComplete(CurlRequest&, NetworkLoadMetrics&&) = 0;
     48    virtual void curlDidFailWithError(CurlRequest&, ResourceError&&, CertificateInfo&&) = 0;
    4749};
    4850
  • trunk/Source/WebCore/platform/network/curl/CurlResourceHandleDelegate.cpp

    r242517 r246401  
    7575}
    7676
    77 void CurlResourceHandleDelegate::curlDidSendData(CurlRequest& request, unsigned long long bytesSent, unsigned long long totalBytesToBeSent)
     77void CurlResourceHandleDelegate::curlDidSendData(CurlRequest&, unsigned long long bytesSent, unsigned long long totalBytesToBeSent)
    7878{
    79     UNUSED_PARAM(request);
    8079    ASSERT(isMainThread());
    8180
     
    10099}
    101100
    102 void CurlResourceHandleDelegate::curlDidReceiveResponse(CurlRequest& request, const CurlResponse& receivedResponse)
     101void CurlResourceHandleDelegate::curlDidReceiveResponse(CurlRequest& request, CurlResponse&& receivedResponse)
    103102{
    104103    ASSERT(isMainThread());
     
    109108
    110109    m_response = ResourceResponse(receivedResponse);
    111 
    112     m_response.setCertificateInfo(request.certificateInfo().isolatedCopy());
    113     m_response.setDeprecatedNetworkLoadMetrics(request.networkLoadMetrics().isolatedCopy());
     110    m_response.setCertificateInfo(WTFMove(receivedResponse.certificateInfo));
     111    m_response.setDeprecatedNetworkLoadMetrics(WTFMove(receivedResponse.networkLoadMetrics));
    114112
    115113    handleCookieHeaders(d(), request.resourceRequest(), receivedResponse);
     
    146144}
    147145
    148 void CurlResourceHandleDelegate::curlDidReceiveBuffer(CurlRequest& request, Ref<SharedBuffer>&& buffer)
     146void CurlResourceHandleDelegate::curlDidReceiveBuffer(CurlRequest&, Ref<SharedBuffer>&& buffer)
    149147{
    150     UNUSED_PARAM(request);
    151148    ASSERT(isMainThread());
    152149
     
    158155}
    159156
    160 void CurlResourceHandleDelegate::curlDidComplete(CurlRequest& request)
     157void CurlResourceHandleDelegate::curlDidComplete(CurlRequest&, NetworkLoadMetrics&&)
    161158{
    162159    ASSERT(isMainThread());
     
    165162        return;
    166163
    167     m_response.setDeprecatedNetworkLoadMetrics(request.networkLoadMetrics().isolatedCopy());
    168 
    169164    CurlCacheManager::singleton().didFinishLoading(m_handle);
    170165    client()->didFinishLoading(&m_handle);
    171166}
    172167
    173 void CurlResourceHandleDelegate::curlDidFailWithError(CurlRequest& request, const ResourceError& resourceError)
     168void CurlResourceHandleDelegate::curlDidFailWithError(CurlRequest&, ResourceError&& resourceError, CertificateInfo&&)
    174169{
    175     UNUSED_PARAM(request);
    176170    ASSERT(isMainThread());
    177171
  • trunk/Source/WebCore/platform/network/curl/CurlResourceHandleDelegate.h

    r228927 r246401  
    5353
    5454    void curlDidSendData(CurlRequest&, unsigned long long bytesSent, unsigned long long totalBytesToBeSent) final;
    55     void curlDidReceiveResponse(CurlRequest&, const CurlResponse&) final;
     55    void curlDidReceiveResponse(CurlRequest&, CurlResponse&&) final;
    5656    void curlDidReceiveBuffer(CurlRequest&, Ref<SharedBuffer>&&) final;
    57     void curlDidComplete(CurlRequest&) final;
    58     void curlDidFailWithError(CurlRequest&, const ResourceError&) final;
     57    void curlDidComplete(CurlRequest&, NetworkLoadMetrics&&) final;
     58    void curlDidFailWithError(CurlRequest&, ResourceError&&, CertificateInfo&&) final;
    5959
    6060private:
  • trunk/Source/WebCore/platform/network/curl/CurlResponse.h

    r238771 r246401  
    2626#pragma once
    2727
     28#include "CertificateInfo.h"
     29#include "NetworkLoadMetrics.h"
    2830#include <wtf/URL.h>
    2931
     
    5153        copy.httpVersion = httpVersion;
    5254
     55        copy.certificateInfo = certificateInfo.isolatedCopy();
     56        copy.networkLoadMetrics = networkLoadMetrics.isolatedCopy();
     57
    5358        return copy;
    5459    }
     
    6469    long availableProxyAuth { 0 };
    6570    long httpVersion { 0 };
     71
     72    CertificateInfo certificateInfo;
     73    NetworkLoadMetrics networkLoadMetrics;
    6674};
    6775
  • trunk/Source/WebCore/platform/network/curl/ResourceResponseCurl.cpp

    r234311 r246401  
    7979
    8080ResourceResponse::ResourceResponse(const CurlResponse& response)
    81     : ResourceResponseBase(response.url, "", response.expectedContentLength, "")
    82 {
     81    : ResourceResponseBase()
     82{
     83    setURL(response.url);
     84    setExpectedContentLength(response.expectedContentLength);
    8385    setHTTPStatusCode(response.statusCode ? response.statusCode : response.httpConnectCode);
    8486
     
    102104        break;
    103105    }
     106
    104107    setMimeType(extractMIMETypeFromMediaType(httpHeaderField(HTTPHeaderName::ContentType)).convertToASCIILowercase());
    105108    setTextEncodingName(extractCharsetFromMediaType(httpHeaderField(HTTPHeaderName::ContentType)));
  • trunk/Source/WebKit/ChangeLog

    r246400 r246401  
     12019-06-13  Takashi Komori  <Takashi.Komori@sony.com>
     2
     3        [curl] Remove member objects of CurlRequest not to share by different threads.
     4        https://bugs.webkit.org/show_bug.cgi?id=198747
     5
     6        Reviewed by Fujii Hironori.
     7
     8        * NetworkProcess/curl/NetworkDataTaskCurl.cpp:
     9        (WebKit::NetworkDataTaskCurl::curlDidReceiveResponse):
     10        (WebKit::NetworkDataTaskCurl::curlDidComplete):
     11        (WebKit::NetworkDataTaskCurl::curlDidFailWithError):
     12        * NetworkProcess/curl/NetworkDataTaskCurl.h:
     13
    1142019-06-13  Zan Dobersek  <zdobersek@igalia.com>
    215
  • trunk/Source/WebKit/NetworkProcess/curl/NetworkDataTaskCurl.cpp

    r245215 r246401  
    3333#include <WebCore/CookieJar.h>
    3434#include <WebCore/CurlRequest.h>
     35#include <WebCore/NetworkLoadMetrics.h>
    3536#include <WebCore/NetworkStorageSession.h>
    3637#include <WebCore/NotImplemented.h>
     
    141142}
    142143
    143 void NetworkDataTaskCurl::curlDidReceiveResponse(CurlRequest& request, const CurlResponse& receivedResponse)
     144void NetworkDataTaskCurl::curlDidReceiveResponse(CurlRequest& request, CurlResponse&& receivedResponse)
    144145{
    145146    auto protectedThis = makeRef(*this);
     
    148149
    149150    m_response = ResourceResponse(receivedResponse);
    150     m_response.setDeprecatedNetworkLoadMetrics(request.networkLoadMetrics().isolatedCopy());
     151    m_response.setCertificateInfo(WTFMove(receivedResponse.certificateInfo));
     152    m_response.setDeprecatedNetworkLoadMetrics(WTFMove(receivedResponse.networkLoadMetrics));
    151153
    152154    handleCookieHeaders(request.resourceRequest(), receivedResponse);
     
    180182}
    181183
    182 void NetworkDataTaskCurl::curlDidComplete(CurlRequest& request)
     184void NetworkDataTaskCurl::curlDidComplete(CurlRequest&, NetworkLoadMetrics&& networkLoadMetrics)
    183185{
    184186    if (state() == State::Canceling || state() == State::Completed || (!m_client && !isDownload()))
    185187        return;
    186188
    187     m_response.setDeprecatedNetworkLoadMetrics(request.networkLoadMetrics().isolatedCopy());
    188 
    189     m_client->didCompleteWithError({ }, m_response.deprecatedNetworkLoadMetrics());
    190 }
    191 
    192 void NetworkDataTaskCurl::curlDidFailWithError(CurlRequest& request, const ResourceError& resourceError)
     189    m_client->didCompleteWithError({ }, WTFMove(networkLoadMetrics));
     190}
     191
     192void NetworkDataTaskCurl::curlDidFailWithError(CurlRequest& request, ResourceError&& resourceError, CertificateInfo&& certificateInfo)
    193193{
    194194    if (state() == State::Canceling || state() == State::Completed || (!m_client && !isDownload()))
     
    196196
    197197    if (resourceError.isSSLCertVerificationError()) {
    198         tryServerTrustEvaluation(AuthenticationChallenge(request.resourceRequest().url(), request.certificateInfo(), resourceError));
     198        tryServerTrustEvaluation(AuthenticationChallenge(request.resourceRequest().url(), certificateInfo, resourceError));
    199199        return;
    200200    }
  • trunk/Source/WebKit/NetworkProcess/curl/NetworkDataTaskCurl.h

    r244443 r246401  
    2828#include "NetworkDataTask.h"
    2929#include <WebCore/CurlRequestClient.h>
    30 #include <WebCore/NetworkLoadMetrics.h>
    3130#include <WebCore/ProtectionSpace.h>
    3231#include <WebCore/ResourceResponse.h>
     
    6564    Ref<WebCore::CurlRequest> createCurlRequest(WebCore::ResourceRequest&&, RequestStatus = RequestStatus::NewRequest);
    6665    void curlDidSendData(WebCore::CurlRequest&, unsigned long long, unsigned long long) override;
    67     void curlDidReceiveResponse(WebCore::CurlRequest&, const WebCore::CurlResponse&) override;
     66    void curlDidReceiveResponse(WebCore::CurlRequest&, WebCore::CurlResponse&&) override;
    6867    void curlDidReceiveBuffer(WebCore::CurlRequest&, Ref<WebCore::SharedBuffer>&&) override;
    69     void curlDidComplete(WebCore::CurlRequest&) override;
    70     void curlDidFailWithError(WebCore::CurlRequest&, const WebCore::ResourceError&) override;
     68    void curlDidComplete(WebCore::CurlRequest&, WebCore::NetworkLoadMetrics&&) override;
     69    void curlDidFailWithError(WebCore::CurlRequest&, WebCore::ResourceError&&, WebCore::CertificateInfo&&) override;
    7170
    7271    void invokeDidReceiveResponse();
Note: See TracChangeset for help on using the changeset viewer.