Chromium Code Reviews| Index: content/browser/service_worker/service_worker_controllee_request_handler.cc |
| diff --git a/content/browser/service_worker/service_worker_controllee_request_handler.cc b/content/browser/service_worker/service_worker_controllee_request_handler.cc |
| index 3ac742ca3d8a95c82a60c98a1d5d66292ae9f3f8..9c8c468893179a73340a429306de54c676f6c506 100644 |
| --- a/content/browser/service_worker/service_worker_controllee_request_handler.cc |
| +++ b/content/browser/service_worker/service_worker_controllee_request_handler.cc |
| @@ -64,6 +64,11 @@ net::URLRequestJob* ServiceWorkerControlleeRequestHandler::MaybeCreateJob( |
| net::URLRequest* request, |
| net::NetworkDelegate* network_delegate, |
| ResourceContext* resource_context) { |
| + if (job_.get() && worker_start_time_.is_null()) { |
| + // save worker-start time of the first job. |
|
horo
2015/05/28 10:11:37
nit s/s/S
Kunihiko Sakamoto
2015/05/28 10:21:19
Done.
|
| + worker_start_time_ = job_->worker_start_time(); |
| + } |
| + |
| if (!context_ || !provider_host_) { |
| // We can't do anything other than to fall back to network. |
| job_ = NULL; |
| @@ -119,12 +124,17 @@ void ServiceWorkerControlleeRequestHandler::GetExtraResponseInfo( |
| *was_fetched_via_service_worker = false; |
| *was_fallback_required_by_service_worker = false; |
| *original_url_via_service_worker = GURL(); |
| + *worker_start_time = worker_start_time_; |
| return; |
| } |
| job_->GetExtraResponseInfo( |
| was_fetched_via_service_worker, was_fallback_required_by_service_worker, |
| original_url_via_service_worker, response_type_via_service_worker, |
| worker_start_time); |
| + if (!worker_start_time_.is_null()) { |
| + // If we have worker start time from previous job, use it. |
| + *worker_start_time = worker_start_time_; |
| + } |
| } |
| void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( |