Index: content/browser/service_worker/service_worker_provider_host.cc |
diff --git a/content/browser/service_worker/service_worker_provider_host.cc b/content/browser/service_worker/service_worker_provider_host.cc |
index 599047519bc3e313936a6e6c7b1b44f56bd9c907..1edadd6ce87f6c148bf082a54c751de0b3cc6de2 100644 |
--- a/content/browser/service_worker/service_worker_provider_host.cc |
+++ b/content/browser/service_worker/service_worker_provider_host.cc |
@@ -71,21 +71,27 @@ ServiceWorkerProviderHost::OneShotGetReadyCallback::~OneShotGetReadyCallback() { |
ServiceWorkerProviderHost::ServiceWorkerProviderHost( |
int render_process_id, |
int render_frame_id, |
+ int shared_worker_route_id, |
int provider_id, |
- ServiceWorkerProviderType provider_type, |
base::WeakPtr<ServiceWorkerContextCore> context, |
ServiceWorkerDispatcherHost* dispatcher_host) |
: client_uuid_(base::GenerateGUID()), |
render_process_id_(render_process_id), |
render_frame_id_(render_frame_id), |
+ shared_worker_route_id_(shared_worker_route_id), |
render_thread_id_(kDocumentMainThreadId), |
provider_id_(provider_id), |
- provider_type_(provider_type), |
+ provider_type_(SERVICE_WORKER_PROVIDER_FOR_CONTROLLER), |
context_(context), |
dispatcher_host_(dispatcher_host), |
allow_association_(true) { |
DCHECK_NE(ChildProcessHost::kInvalidUniqueID, render_process_id_); |
- DCHECK_NE(SERVICE_WORKER_PROVIDER_UNKNOWN, provider_type_); |
+ DCHECK(render_frame_id == MSG_ROUTING_NONE || |
+ shared_worker_route_id == MSG_ROUTING_NONE); |
+ if (render_frame_id != MSG_ROUTING_NONE) |
+ provider_type_ = SERVICE_WORKER_PROVIDER_FOR_WINDOW; |
+ else if (shared_worker_route_id_ != MSG_ROUTING_NONE) |
+ provider_type_ = SERVICE_WORKER_PROVIDER_FOR_SHARED_WORKER; |
nhiroki
2015/06/12 02:11:27
(I'm assuming that "shared_worker_route_id" is alm
horo
2015/06/12 04:19:19
Done.
|
if (provider_type_ == SERVICE_WORKER_PROVIDER_FOR_CONTROLLER) { |
// Actual thread id is set when the service worker context gets started. |
render_thread_id_ = kInvalidEmbeddedWorkerThreadId; |