Chromium Code Reviews| Index: content/renderer/service_worker/embedded_worker_context_client.cc |
| diff --git a/content/renderer/service_worker/embedded_worker_context_client.cc b/content/renderer/service_worker/embedded_worker_context_client.cc |
| index 6481ae42e3ec426b44c508d77ea3ea986d96cbf4..b9e2796d754b562e2e763c8c51ed033b70635e62 100644 |
| --- a/content/renderer/service_worker/embedded_worker_context_client.cc |
| +++ b/content/renderer/service_worker/embedded_worker_context_client.cc |
| @@ -8,15 +8,18 @@ |
| #include "base/message_loop/message_loop_proxy.h" |
| #include "base/pickle.h" |
| #include "base/threading/thread_local.h" |
| +#include "content/child/service_worker/service_worker_network_provider.h" |
| #include "content/child/thread_safe_sender.h" |
| #include "content/child/worker_task_runner.h" |
| #include "content/child/worker_thread_task_runner.h" |
| #include "content/common/service_worker/embedded_worker_messages.h" |
| +#include "content/public/renderer/document_state.h" |
| #include "content/renderer/render_thread_impl.h" |
| #include "content/renderer/service_worker/embedded_worker_dispatcher.h" |
| #include "content/renderer/service_worker/service_worker_script_context.h" |
| #include "ipc/ipc_message_macros.h" |
| #include "third_party/WebKit/public/platform/WebString.h" |
| +#include "third_party/WebKit/public/web/WebDataSource.h" |
| namespace content { |
| @@ -61,6 +64,17 @@ EmbeddedWorkerContextClient::~EmbeddedWorkerContextClient() { |
| g_worker_client_tls.Pointer()->Set(NULL); |
| } |
| +void EmbeddedWorkerContextClient::didCreateDataSource( |
| + blink::WebDataSource* data_source) { |
| + // We need to tell the network provider prior to loading the script so we |
| + // get the right version. |
| + ServiceWorkerNetworkProvider* provider = |
| + ServiceWorkerNetworkProvider::FromDocumentState( |
|
michaeln
2014/03/11 02:24:04
We'll need to construct the provider here, not jus
|
| + DocumentState::FromDataSource(data_source)); |
| + DCHECK(provider); |
| + provider->SetServiceWorkerVersionId(service_worker_version_id_); |
| +} |
| + |
| bool EmbeddedWorkerContextClient::OnMessageReceived( |
| const IPC::Message& msg) { |
| bool handled = true; |