diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc | 59 |
1 files changed, 39 insertions, 20 deletions
diff --git a/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc b/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc index f5752cbbaab..0215b9965b1 100644 --- a/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc +++ b/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc @@ -12,7 +12,6 @@ #include "third_party/blink/public/mojom/devtools/console_message.mojom-blink.h" #include "third_party/blink/public/platform/platform.h" #include "third_party/blink/public/platform/task_type.h" -#include "third_party/blink/public/platform/web_url_load_timing.h" #include "third_party/blink/public/platform/web_url_loader.h" #include "third_party/blink/public/platform/web_url_loader_client.h" #include "third_party/blink/public/platform/web_url_loader_factory.h" @@ -23,6 +22,7 @@ #include "third_party/blink/renderer/core/frame/navigator.h" #include "third_party/blink/renderer/core/inspector/console_message.h" #include "third_party/blink/renderer/core/loader/alternate_signed_exchange_resource_info.h" +#include "third_party/blink/renderer/platform/heap/heap.h" #include "third_party/blink/renderer/platform/loader/link_header.h" #include "third_party/blink/renderer/platform/runtime_enabled_features.h" #include "third_party/blink/renderer/platform/scheduler/public/frame_scheduler.h" @@ -43,7 +43,9 @@ class PrefetchedSignedExchangeManager::PrefetchedSignedExchangeLoader PrefetchedSignedExchangeLoader( const WebURLRequest& request, scoped_refptr<base::SingleThreadTaskRunner> task_runner) - : request_(request), task_runner_(std::move(task_runner)) {} + : task_runner_(std::move(task_runner)) { + request_.CopyFrom(request); + } ~PrefetchedSignedExchangeLoader() override {} @@ -60,28 +62,44 @@ class PrefetchedSignedExchangeManager::PrefetchedSignedExchangeLoader const WebURLRequest& request() const { return request_; } // WebURLLoader methods: - void LoadSynchronously(const WebURLRequest& request, - WebURLLoaderClient* client, - WebURLResponse& response, - base::Optional<WebURLError>& error, - WebData& data, - int64_t& encoded_data_length, - int64_t& encoded_body_length, - WebBlobInfo& downloaded_blob) override { + void LoadSynchronously( + std::unique_ptr<network::ResourceRequest> request, + scoped_refptr<WebURLRequest::ExtraData> request_extra_data, + int requestor_id, + bool download_to_network_cache_only, + bool pass_response_pipe_to_client, + bool no_mime_sniffing, + base::TimeDelta timeout_interval, + WebURLLoaderClient* client, + WebURLResponse& response, + base::Optional<WebURLError>& error, + WebData& data, + int64_t& encoded_data_length, + int64_t& encoded_body_length, + WebBlobInfo& downloaded_blob) override { NOTREACHED(); } - void LoadAsynchronously(const WebURLRequest& request, - WebURLLoaderClient* client) override { + void LoadAsynchronously( + std::unique_ptr<network::ResourceRequest> request, + scoped_refptr<WebURLRequest::ExtraData> request_extra_data, + int requestor_id, + bool download_to_network_cache_only, + bool no_mime_sniffing, + WebURLLoaderClient* client) override { if (url_loader_) { - url_loader_->LoadAsynchronously(request, client); + url_loader_->LoadAsynchronously( + std::move(request), std::move(request_extra_data), requestor_id, + download_to_network_cache_only, no_mime_sniffing, client); return; } // It is safe to use Unretained(client), because |client| is a // ResourceLoader which owns |this|, and we are binding with weak ptr of // |this| here. - pending_method_calls_.push( - WTF::Bind(&PrefetchedSignedExchangeLoader::LoadAsynchronously, - GetWeakPtr(), request, WTF::Unretained(client))); + pending_method_calls_.push(WTF::Bind( + &PrefetchedSignedExchangeLoader::LoadAsynchronously, GetWeakPtr(), + std::move(request), std::move(request_extra_data), requestor_id, + download_to_network_cache_only, no_mime_sniffing, + WTF::Unretained(client))); } void SetDefersLoading(bool value) override { if (url_loader_) { @@ -116,7 +134,7 @@ class PrefetchedSignedExchangeManager::PrefetchedSignedExchangeLoader } } - const WebURLRequest request_; + WebURLRequest request_; scoped_refptr<base::SingleThreadTaskRunner> task_runner_; std::unique_ptr<WebURLLoader> url_loader_; std::queue<base::OnceClosure> pending_method_calls_; @@ -168,7 +186,7 @@ PrefetchedSignedExchangeManager::PrefetchedSignedExchangeManager( PrefetchedSignedExchangeManager::~PrefetchedSignedExchangeManager() {} -void PrefetchedSignedExchangeManager::Trace(blink::Visitor* visitor) { +void PrefetchedSignedExchangeManager::Trace(Visitor* visitor) { visitor->Trace(frame_); } @@ -266,8 +284,9 @@ void PrefetchedSignedExchangeManager::TriggerLoad() { "Requesting the all original resources ignoreing all alternative signed" " exchange responses."; frame_->GetDocument()->AddConsoleMessage( - ConsoleMessage::Create(mojom::ConsoleMessageSource::kNetwork, - mojom::ConsoleMessageLevel::kError, message)); + MakeGarbageCollected<ConsoleMessage>( + mojom::ConsoleMessageSource::kNetwork, + mojom::ConsoleMessageLevel::kError, message)); for (auto loader : loaders_) { if (!loader) continue; |