diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-24 06:19:28 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-24 06:19:28 +0000 |
commit | a95986a837fc86e079b5c6dac357636478b50092 (patch) | |
tree | 66a32009250791e64741216cdd6c21ecf1ff7f86 /chrome/worker | |
parent | 125a7ba65ad10ace9edcf36d6943ce9ae2bdc1d6 (diff) | |
download | chromium_src-a95986a837fc86e079b5c6dac357636478b50092.zip chromium_src-a95986a837fc86e079b5c6dac357636478b50092.tar.gz chromium_src-a95986a837fc86e079b5c6dac357636478b50092.tar.bz2 |
Make IPC::Channel::Listener:OnMessageReceived have a return value indicating whether a message was processed or not.
TBR=brettw
Review URL: http://codereview.chromium.org/5978003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70139 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/worker')
-rw-r--r-- | chrome/worker/websharedworker_stub.cc | 5 | ||||
-rw-r--r-- | chrome/worker/websharedworker_stub.h | 2 | ||||
-rw-r--r-- | chrome/worker/webworker_stub.cc | 7 | ||||
-rw-r--r-- | chrome/worker/webworker_stub.h | 2 | ||||
-rw-r--r-- | chrome/worker/worker_thread.cc | 7 | ||||
-rw-r--r-- | chrome/worker/worker_thread.h | 2 |
6 files changed, 17 insertions, 8 deletions
diff --git a/chrome/worker/websharedworker_stub.cc b/chrome/worker/websharedworker_stub.cc index 8cb167a..0c03ba0 100644 --- a/chrome/worker/websharedworker_stub.cc +++ b/chrome/worker/websharedworker_stub.cc @@ -26,13 +26,16 @@ WebSharedWorkerStub::~WebSharedWorkerStub() { impl_->clientDestroyed(); } -void WebSharedWorkerStub::OnMessageReceived(const IPC::Message& message) { +bool WebSharedWorkerStub::OnMessageReceived(const IPC::Message& message) { + bool handled = true; IPC_BEGIN_MESSAGE_MAP(WebSharedWorkerStub, message) IPC_MESSAGE_HANDLER(WorkerMsg_StartWorkerContext, OnStartWorkerContext) IPC_MESSAGE_HANDLER(WorkerMsg_TerminateWorkerContext, OnTerminateWorkerContext) IPC_MESSAGE_HANDLER(WorkerMsg_Connect, OnConnect) + IPC_MESSAGE_UNHANDLED(handled = false) IPC_END_MESSAGE_MAP() + return handled; } void WebSharedWorkerStub::OnChannelError() { diff --git a/chrome/worker/websharedworker_stub.h b/chrome/worker/websharedworker_stub.h index b9cb60c..04f07af 100644 --- a/chrome/worker/websharedworker_stub.h +++ b/chrome/worker/websharedworker_stub.h @@ -22,7 +22,7 @@ class WebSharedWorkerStub : public WebWorkerStubBase { const WorkerAppCacheInitInfo& appcache_init_info); // IPC::Channel::Listener implementation. - virtual void OnMessageReceived(const IPC::Message& message); + virtual bool OnMessageReceived(const IPC::Message& message); virtual void OnChannelError(); virtual const GURL& url() const; diff --git a/chrome/worker/webworker_stub.cc b/chrome/worker/webworker_stub.cc index cd58cab..a3d3ba4 100644 --- a/chrome/worker/webworker_stub.cc +++ b/chrome/worker/webworker_stub.cc @@ -60,10 +60,11 @@ const GURL& WebWorkerStub::url() const { return url_; } -void WebWorkerStub::OnMessageReceived(const IPC::Message& message) { +bool WebWorkerStub::OnMessageReceived(const IPC::Message& message) { if (!impl_) - return; + return false; + bool handled = true; IPC_BEGIN_MESSAGE_MAP(WebWorkerStub, message) IPC_MESSAGE_FORWARD(WorkerMsg_StartWorkerContext, impl_, WebWorker::startWorkerContext) @@ -72,7 +73,9 @@ void WebWorkerStub::OnMessageReceived(const IPC::Message& message) { IPC_MESSAGE_HANDLER(WorkerMsg_PostMessage, OnPostMessage) IPC_MESSAGE_FORWARD(WorkerMsg_WorkerObjectDestroyed, impl_, WebWorker::workerObjectDestroyed) + IPC_MESSAGE_UNHANDLED(handled = false) IPC_END_MESSAGE_MAP() + return handled; } void WebWorkerStub::OnTerminateWorkerContext() { diff --git a/chrome/worker/webworker_stub.h b/chrome/worker/webworker_stub.h index 76e1058..cc0d75d 100644 --- a/chrome/worker/webworker_stub.h +++ b/chrome/worker/webworker_stub.h @@ -22,7 +22,7 @@ class WebWorkerStub : public WebWorkerStubBase { const WorkerAppCacheInitInfo& appcache_init_info); // IPC::Channel::Listener implementation. - virtual void OnMessageReceived(const IPC::Message& message); + virtual bool OnMessageReceived(const IPC::Message& message); virtual void OnChannelError(); virtual const GURL& url() const; diff --git a/chrome/worker/worker_thread.cc b/chrome/worker/worker_thread.cc index cafd482..f7a1e4a 100644 --- a/chrome/worker/worker_thread.cc +++ b/chrome/worker/worker_thread.cc @@ -77,14 +77,17 @@ WorkerThread* WorkerThread::current() { return lazy_tls.Pointer()->Get(); } -void WorkerThread::OnControlMessageReceived(const IPC::Message& msg) { +bool WorkerThread::OnControlMessageReceived(const IPC::Message& msg) { // Appcache messages are handled by a delegate. if (appcache_dispatcher_->OnMessageReceived(msg)) - return; + return true; + bool handled = true; IPC_BEGIN_MESSAGE_MAP(WorkerThread, msg) IPC_MESSAGE_HANDLER(WorkerProcessMsg_CreateWorker, OnCreateWorker) + IPC_MESSAGE_UNHANDLED(handled = false) IPC_END_MESSAGE_MAP() + return handled; } void WorkerThread::OnCreateWorker( diff --git a/chrome/worker/worker_thread.h b/chrome/worker/worker_thread.h index da154b4..1bde9b5 100644 --- a/chrome/worker/worker_thread.h +++ b/chrome/worker/worker_thread.h @@ -35,7 +35,7 @@ class WorkerThread : public ChildThread { } private: - virtual void OnControlMessageReceived(const IPC::Message& msg); + virtual bool OnControlMessageReceived(const IPC::Message& msg); virtual void OnChannelError(); void OnCreateWorker(const WorkerProcessMsg_CreateWorker_Params& params); |