diff options
Diffstat (limited to 'chromium/content/browser/loader/prefetch_url_loader.cc')
-rw-r--r-- | chromium/content/browser/loader/prefetch_url_loader.cc | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/chromium/content/browser/loader/prefetch_url_loader.cc b/chromium/content/browser/loader/prefetch_url_loader.cc index 9c4462083d2..c68df8a1f0c 100644 --- a/chromium/content/browser/loader/prefetch_url_loader.cc +++ b/chromium/content/browser/loader/prefetch_url_loader.cc @@ -137,10 +137,8 @@ void PrefetchURLLoader::OnReceiveResponse( signed_exchange_utils::ShouldHandleAsSignedHTTPExchange( resource_request_.url, *response)) { DCHECK(!signed_exchange_prefetch_handler_); - if (prefetched_signed_exchange_cache_adapter_) { - prefetched_signed_exchange_cache_adapter_->OnReceiveOuterResponse( - response.Clone()); - } + const bool keep_entry_for_prefetch_cache = + !!prefetched_signed_exchange_cache_adapter_; // Note that after this point this doesn't directly get upcalls from the // network. (Until |this| calls the handler's FollowRedirect.) signed_exchange_prefetch_handler_ = @@ -149,7 +147,8 @@ void PrefetchURLLoader::OnReceiveResponse( mojo::ScopedDataPipeConsumerHandle(), loader_.Unbind(), client_receiver_.Unbind(), network_loader_factory_, url_loader_throttles_getter_, this, - signed_exchange_prefetch_metric_recorder_, accept_langs_); + signed_exchange_prefetch_metric_recorder_, accept_langs_, + keep_entry_for_prefetch_cache); return; } @@ -168,12 +167,6 @@ void PrefetchURLLoader::OnReceiveResponse( response->recursive_prefetch_token = recursive_prefetch_token; } - if (prefetched_signed_exchange_cache_adapter_ && - signed_exchange_prefetch_handler_) { - prefetched_signed_exchange_cache_adapter_->OnReceiveInnerResponse( - response.Clone()); - } - forwarding_client_->OnReceiveResponse(std::move(response)); } @@ -182,10 +175,9 @@ void PrefetchURLLoader::OnReceiveRedirect( network::mojom::URLResponseHeadPtr head) { if (prefetched_signed_exchange_cache_adapter_ && signed_exchange_prefetch_handler_) { - prefetched_signed_exchange_cache_adapter_->OnReceiveRedirect( - redirect_info.new_url, - signed_exchange_prefetch_handler_->ComputeHeaderIntegrity(), - signed_exchange_prefetch_handler_->GetSignatureExpireTime()); + prefetched_signed_exchange_cache_adapter_->OnReceiveSignedExchange( + signed_exchange_prefetch_handler_ + ->TakePrefetchedSignedExchangeCacheEntry()); } resource_request_.url = redirect_info.new_url; |