| Index: chrome/browser/renderer_host/resource_message_filter.cc
|
| diff --git a/chrome/browser/renderer_host/resource_message_filter.cc b/chrome/browser/renderer_host/resource_message_filter.cc
|
| index a7d53c0068c49f40ea4a0c473dac5fa16651612e..d40e247865e3fa49d395655c1720af8626e38ce6 100644
|
| --- a/chrome/browser/renderer_host/resource_message_filter.cc
|
| +++ b/chrome/browser/renderer_host/resource_message_filter.cc
|
| @@ -310,6 +310,8 @@ bool ResourceMessageFilter::OnMessageReceived(const IPC::Message& msg) {
|
| OnOpenChannelToPlugin)
|
| IPC_MESSAGE_HANDLER(ViewHostMsg_LaunchNaCl, OnLaunchNaCl)
|
| IPC_MESSAGE_HANDLER(ViewHostMsg_CreateWorker, OnCreateWorker)
|
| + IPC_MESSAGE_HANDLER(ViewHostMsg_LookupSharedWorker, OnLookupSharedWorker)
|
| + IPC_MESSAGE_HANDLER(ViewHostMsg_DocumentDetached, OnDocumentDetached)
|
| IPC_MESSAGE_HANDLER(ViewHostMsg_CancelCreateDedicatedWorker,
|
| OnCancelCreateDedicatedWorker)
|
| IPC_MESSAGE_HANDLER(ViewHostMsg_ForwardToWorker,
|
| @@ -654,15 +656,32 @@ void ResourceMessageFilter::OnCreateWorker(const GURL& url,
|
| int* route_id) {
|
| *route_id = render_widget_helper_->GetNextRoutingID();
|
| WorkerService::GetInstance()->CreateWorker(
|
| - url, is_shared, name, id(), render_view_route_id, this, id(), *route_id);
|
| + url, is_shared, name, id(), render_view_route_id, this, *route_id);
|
| +}
|
| +
|
| +void ResourceMessageFilter::OnLookupSharedWorker(const GURL& url,
|
| + const string16& name,
|
| + unsigned long long document_id,
|
| + int* route_id,
|
| + bool* url_mismatch) {
|
| + int new_route_id = render_widget_helper_->GetNextRoutingID();
|
| + bool worker_found = WorkerService::GetInstance()->LookupSharedWorker(
|
| + url, name, document_id, this, new_route_id, url_mismatch);
|
| + *route_id = worker_found ? new_route_id : MSG_ROUTING_NONE;
|
| +}
|
| +
|
| +void ResourceMessageFilter::OnDocumentDetached(unsigned long long document_id) {
|
| + // Notify the WorkerService that the passed document was detached so any
|
| + // associated shared workers can be shut down.
|
| + WorkerService::GetInstance()->DocumentDetached(this, document_id);
|
| }
|
|
|
| void ResourceMessageFilter::OnCancelCreateDedicatedWorker(int route_id) {
|
| - WorkerService::GetInstance()->CancelCreateDedicatedWorker(id(), route_id);
|
| + WorkerService::GetInstance()->CancelCreateDedicatedWorker(this, route_id);
|
| }
|
|
|
| void ResourceMessageFilter::OnForwardToWorker(const IPC::Message& message) {
|
| - WorkerService::GetInstance()->ForwardMessage(message, id());
|
| + WorkerService::GetInstance()->ForwardMessage(message, this);
|
| }
|
|
|
| void ResourceMessageFilter::OnDownloadUrl(const IPC::Message& message,
|
|
|