Chromium Code Reviews| Index: content/renderer/service_worker/embedded_worker_instance_client_impl.cc |
| diff --git a/content/renderer/service_worker/embedded_worker_instance_client_impl.cc b/content/renderer/service_worker/embedded_worker_instance_client_impl.cc |
| index 4b399b8819280218acbf37621858e962e0783aed..f5926ad01713d9aa70d5c97dc45620eab4288167 100644 |
| --- a/content/renderer/service_worker/embedded_worker_instance_client_impl.cc |
| +++ b/content/renderer/service_worker/embedded_worker_instance_client_impl.cc |
| @@ -69,6 +69,11 @@ void EmbeddedWorkerInstanceClientImpl::StopWorker( |
| const StopWorkerCallback& callback) { |
| DCHECK(ChildThreadImpl::current()); |
| DCHECK(embedded_worker_id_); |
| + // StopWorker is possible to be called twice. |
| + if (stop_callback_) { |
| + LOG(WARNING) << "Got StopWorker for stopping worker"; |
| + return; |
| + } |
| DCHECK(!stop_callback_); |
|
nhiroki
2016/10/20 09:22:11
ditto.
shimazu
2016/10/21 01:17:03
Done.
|
| TRACE_EVENT0("ServiceWorker", "EmbeddedWorkerInstanceClientImpl::StopWorker"); |
| stop_callback_ = std::move(callback); |