| Index: content/browser/service_worker/service_worker_version.cc
|
| diff --git a/content/browser/service_worker/service_worker_version.cc b/content/browser/service_worker/service_worker_version.cc
|
| index 1d70efe8bebb39d0fc1c47e06a24165fb9282fde..476340b16cefa7b753af46458584c0d68246dac6 100644
|
| --- a/content/browser/service_worker/service_worker_version.cc
|
| +++ b/content/browser/service_worker/service_worker_version.cc
|
| @@ -627,6 +627,18 @@ void ServiceWorkerVersion::RemoveControllee(
|
| ScheduleStopWorker();
|
| }
|
|
|
| +void ServiceWorkerVersion::AddStreamingURLRequestJob(
|
| + const ServiceWorkerURLRequestJob* request_job) {
|
| + DCHECK(streaming_url_request_jobs_.find(request_job) ==
|
| + streaming_url_request_jobs_.end());
|
| + streaming_url_request_jobs_.insert(request_job);
|
| +}
|
| +
|
| +void ServiceWorkerVersion::RemoveStreamingURLRequestJob(
|
| + const ServiceWorkerURLRequestJob* request_job) {
|
| + streaming_url_request_jobs_.erase(request_job);
|
| +}
|
| +
|
| void ServiceWorkerVersion::AddListener(Listener* listener) {
|
| listeners_.AddObserver(listener);
|
| }
|
| @@ -706,6 +718,8 @@ void ServiceWorkerVersion::OnStopped(
|
| SERVICE_WORKER_ERROR_FAILED,
|
| false);
|
|
|
| + streaming_url_request_jobs_.clear();
|
| +
|
| FOR_EACH_OBSERVER(Listener, listeners_, OnWorkerStopped(this));
|
|
|
| // There should be no more communication from/to a stopped worker. Deleting
|
| @@ -1131,7 +1145,8 @@ bool ServiceWorkerVersion::HasInflightRequests() const {
|
| !push_callbacks_.IsEmpty() ||
|
| !geofencing_callbacks_.IsEmpty() ||
|
| !get_client_info_callbacks_.IsEmpty() ||
|
| - !cross_origin_connect_callbacks_.IsEmpty();
|
| + !cross_origin_connect_callbacks_.IsEmpty() ||
|
| + !streaming_url_request_jobs_.empty();
|
| }
|
|
|
| void ServiceWorkerVersion::DoomInternal() {
|
|
|