Index: content/child/service_worker/web_service_worker_provider_impl.cc |
diff --git a/content/child/service_worker/web_service_worker_provider_impl.cc b/content/child/service_worker/web_service_worker_provider_impl.cc |
index a951a5e36bdc820a88eaa3e2fa9ba06750d6dffd..13d0d8b3c16fce593a5cc1b36bbe486ce0d29786 100644 |
--- a/content/child/service_worker/web_service_worker_provider_impl.cc |
+++ b/content/child/service_worker/web_service_worker_provider_impl.cc |
@@ -19,14 +19,30 @@ using blink::WebURL; |
namespace content { |
+namespace { |
+ |
+// Must be unique in the child process. |
+int GetNextProviderId() { |
+ static int id = 0; |
+ return ++id; |
+} |
+ |
+} // namespace |
+ |
WebServiceWorkerProviderImpl::WebServiceWorkerProviderImpl( |
ThreadSafeSender* thread_safe_sender, |
- ServiceWorkerMessageFilter* message_filter, |
- const blink::WebURL& origin, |
scoped_ptr<blink::WebServiceWorkerProviderClient> client) |
- : thread_safe_sender_(thread_safe_sender), client_(client.Pass()) {} |
+ : provider_id_(GetNextProviderId()), |
+ thread_safe_sender_(thread_safe_sender), |
+ client_(client.Pass()) { |
+ thread_safe_sender_->Send( |
+ new ServiceWorkerHostMsg_ProviderCreated(provider_id_)); |
kinuko
2013/11/18 05:57:24
Not directly related to this CL, but let me write
|
+} |
-WebServiceWorkerProviderImpl::~WebServiceWorkerProviderImpl() {} |
+WebServiceWorkerProviderImpl::~WebServiceWorkerProviderImpl() { |
+ thread_safe_sender_->Send( |
+ new ServiceWorkerHostMsg_ProviderDestroyed(provider_id_)); |
+} |
void WebServiceWorkerProviderImpl::registerServiceWorker( |
const WebURL& pattern, |