| Index: content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| diff --git a/content/browser/service_worker/service_worker_fetch_dispatcher.cc b/content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| index 6c712a3f8a33e330593bf560ede0d358554c9191..8f69301810bc039cbfb96dc4dd8dee7f768ee3fc 100644
|
| --- a/content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| +++ b/content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| @@ -167,9 +167,6 @@ ServiceWorkerMetrics::EventType FetchTypeToWaitUntilEventType(
|
| void OnFetchEventFinished(
|
| ServiceWorkerVersion* version,
|
| int event_finish_id,
|
| - mojom::URLLoaderFactoryPtr url_loader_factory,
|
| - std::unique_ptr<mojom::URLLoader> url_loader,
|
| - std::unique_ptr<mojom::URLLoaderClient> url_loader_client,
|
| ServiceWorkerStatusCode status,
|
| base::Time dispatch_event_time) {
|
| version->FinishRequest(event_finish_id, status != SERVICE_WORKER_ERROR_ABORT,
|
| @@ -332,15 +329,10 @@ void ServiceWorkerFetchDispatcher::DispatchFetchEvent() {
|
|
|
| // |event_dispatcher| is owned by |version_|. So it is safe to pass the
|
| // unretained raw pointer of |version_| to OnFetchEventFinished callback.
|
| - // Pass |url_loader_factory_|, |url_Loader_| and |url_loader_client_| to the
|
| - // callback to keep them alive while the FetchEvent is onging in the service
|
| - // worker.
|
| version_->event_dispatcher()->DispatchFetchEvent(
|
| fetch_event_id, *request_, std::move(preload_handle_),
|
| base::Bind(&OnFetchEventFinished, base::Unretained(version_.get()),
|
| - event_finish_id, base::Passed(std::move(url_loader_factory_)),
|
| - base::Passed(std::move(url_loader_)),
|
| - base::Passed(std::move(url_loader_client_))));
|
| + event_finish_id));
|
| }
|
|
|
| void ServiceWorkerFetchDispatcher::DidFailToDispatch(
|
| @@ -380,23 +372,23 @@ void ServiceWorkerFetchDispatcher::Complete(
|
| fetch_callback.Run(status, fetch_result, response, version);
|
| }
|
|
|
| -void ServiceWorkerFetchDispatcher::MaybeStartNavigationPreload(
|
| +bool ServiceWorkerFetchDispatcher::MaybeStartNavigationPreload(
|
| net::URLRequest* original_request) {
|
| if (resource_type_ != RESOURCE_TYPE_MAIN_FRAME &&
|
| resource_type_ != RESOURCE_TYPE_SUB_FRAME) {
|
| - return;
|
| + return false;
|
| }
|
| if (!version_->navigation_preload_state().enabled)
|
| - return;
|
| + return false;
|
| // TODO(horo): Currently NavigationPreload doesn't support request body.
|
| if (!request_->blob_uuid.empty())
|
| - return;
|
| + return false;
|
|
|
| ServiceWorkerVersion::NavigationPreloadSupportStatus support_status =
|
| version_->GetNavigationPreloadSupportStatus();
|
| if (support_status !=
|
| ServiceWorkerVersion::NavigationPreloadSupportStatus::SUPPORTED) {
|
| - return;
|
| + return false;
|
| }
|
|
|
| ResourceRequestInfoImpl* original_info =
|
| @@ -407,7 +399,7 @@ void ServiceWorkerFetchDispatcher::MaybeStartNavigationPreload(
|
| } else {
|
| DCHECK(requester_info->IsRenderer());
|
| if (!requester_info->filter())
|
| - return;
|
| + return false;
|
| }
|
|
|
| DCHECK(!url_loader_factory_);
|
| @@ -471,6 +463,7 @@ void ServiceWorkerFetchDispatcher::MaybeStartNavigationPreload(
|
| preload_handle_->url_loader = url_loader->CreateInterfacePtrAndBind();
|
| url_loader_ = std::move(url_loader);
|
| url_loader_client_ = std::move(url_loader_client);
|
| + return true;
|
| }
|
|
|
| ServiceWorkerMetrics::EventType ServiceWorkerFetchDispatcher::GetEventType()
|
|
|