| Index: content/child/service_worker/service_worker_message_filter.cc
|
| diff --git a/content/child/service_worker/service_worker_message_filter.cc b/content/child/service_worker/service_worker_message_filter.cc
|
| index 3d0be9045f74f895c17f5230d8788db61df72b70..3568ad77e5b5250e7104d705d6354fe518aa635c 100644
|
| --- a/content/child/service_worker/service_worker_message_filter.cc
|
| +++ b/content/child/service_worker/service_worker_message_filter.cc
|
| @@ -5,7 +5,6 @@
|
| #include "content/child/service_worker/service_worker_message_filter.h"
|
|
|
| #include "content/child/service_worker/service_worker_dispatcher.h"
|
| -#include "content/child/service_worker/service_worker_message_sender.h"
|
| #include "content/child/thread_safe_sender.h"
|
| #include "content/common/service_worker/service_worker_messages.h"
|
| #include "content/common/service_worker/service_worker_types.h"
|
| @@ -18,7 +17,7 @@ namespace {
|
| // Sends a ServiceWorkerObjectDestroyed message to the browser so it can delete
|
| // the ServiceWorker handle.
|
| void SendServiceWorkerObjectDestroyed(
|
| - ServiceWorkerMessageSender* sender,
|
| + ThreadSafeSender* sender,
|
| int handle_id) {
|
| if (handle_id == kInvalidServiceWorkerHandleId)
|
| return;
|
| @@ -27,7 +26,7 @@ void SendServiceWorkerObjectDestroyed(
|
| }
|
|
|
| void SendRegistrationObjectDestroyed(
|
| - ServiceWorkerMessageSender* sender,
|
| + ThreadSafeSender* sender,
|
| int handle_id) {
|
| if (handle_id == kInvalidServiceWorkerRegistrationHandleId)
|
| return;
|
| @@ -38,8 +37,7 @@ void SendRegistrationObjectDestroyed(
|
| } // namespace
|
|
|
| ServiceWorkerMessageFilter::ServiceWorkerMessageFilter(ThreadSafeSender* sender)
|
| - : WorkerThreadMessageFilter(sender),
|
| - sender_(new ServiceWorkerMessageSender(sender)) {
|
| + : WorkerThreadMessageFilter(sender) {
|
| }
|
|
|
| ServiceWorkerMessageFilter::~ServiceWorkerMessageFilter() {}
|
| @@ -52,7 +50,7 @@ bool ServiceWorkerMessageFilter::ShouldHandleMessage(
|
| void ServiceWorkerMessageFilter::OnFilteredMessageReceived(
|
| const IPC::Message& msg) {
|
| ServiceWorkerDispatcher::GetOrCreateThreadSpecificInstance(
|
| - sender_.get())->OnMessageReceived(msg);
|
| + thread_safe_sender())->OnMessageReceived(msg);
|
| }
|
|
|
| bool ServiceWorkerMessageFilter::GetWorkerThreadIdForMessage(
|
| @@ -80,10 +78,13 @@ void ServiceWorkerMessageFilter::OnStaleRegistered(
|
| int request_id,
|
| const ServiceWorkerRegistrationObjectInfo& info,
|
| const ServiceWorkerVersionAttributes& attrs) {
|
| - SendServiceWorkerObjectDestroyed(sender_.get(), attrs.installing.handle_id);
|
| - SendServiceWorkerObjectDestroyed(sender_.get(), attrs.waiting.handle_id);
|
| - SendServiceWorkerObjectDestroyed(sender_.get(), attrs.active.handle_id);
|
| - SendRegistrationObjectDestroyed(sender_.get(), info.handle_id);
|
| + SendServiceWorkerObjectDestroyed(thread_safe_sender(),
|
| + attrs.installing.handle_id);
|
| + SendServiceWorkerObjectDestroyed(thread_safe_sender(),
|
| + attrs.waiting.handle_id);
|
| + SendServiceWorkerObjectDestroyed(thread_safe_sender(),
|
| + attrs.active.handle_id);
|
| + SendRegistrationObjectDestroyed(thread_safe_sender(), info.handle_id);
|
| }
|
|
|
| void ServiceWorkerMessageFilter::OnStaleSetVersionAttributes(
|
| @@ -92,9 +93,12 @@ void ServiceWorkerMessageFilter::OnStaleSetVersionAttributes(
|
| int registration_handle_id,
|
| int changed_mask,
|
| const ServiceWorkerVersionAttributes& attrs) {
|
| - SendServiceWorkerObjectDestroyed(sender_.get(), attrs.installing.handle_id);
|
| - SendServiceWorkerObjectDestroyed(sender_.get(), attrs.waiting.handle_id);
|
| - SendServiceWorkerObjectDestroyed(sender_.get(), attrs.active.handle_id);
|
| + SendServiceWorkerObjectDestroyed(thread_safe_sender(),
|
| + attrs.installing.handle_id);
|
| + SendServiceWorkerObjectDestroyed(thread_safe_sender(),
|
| + attrs.waiting.handle_id);
|
| + SendServiceWorkerObjectDestroyed(thread_safe_sender(),
|
| + attrs.active.handle_id);
|
| // Don't have to decrement registration refcount because the sender of the
|
| // SetVersionAttributes message doesn't increment it.
|
| }
|
| @@ -104,7 +108,7 @@ void ServiceWorkerMessageFilter::OnStaleSetControllerServiceWorker(
|
| int provider_id,
|
| const ServiceWorkerObjectInfo& info,
|
| bool should_notify_controllerchange) {
|
| - SendServiceWorkerObjectDestroyed(sender_.get(), info.handle_id);
|
| + SendServiceWorkerObjectDestroyed(thread_safe_sender(), info.handle_id);
|
| }
|
|
|
| } // namespace content
|
|
|