Index: ppapi/proxy/dispatcher.cc |
=================================================================== |
--- ppapi/proxy/dispatcher.cc (revision 106716) |
+++ ppapi/proxy/dispatcher.cc (working copy) |
@@ -21,7 +21,8 @@ |
GetInterfaceFunc local_get_interface) |
: ProxyChannel(remote_process_handle), |
disallow_trusted_interfaces_(false), // TODO(brettw) make this settable. |
- local_get_interface_(local_get_interface) { |
+ local_get_interface_(local_get_interface), |
+ callback_tracker_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) { |
} |
Dispatcher::~Dispatcher() { |
@@ -54,6 +55,17 @@ |
} |
bool Dispatcher::OnMessageReceived(const IPC::Message& msg) { |
+ // Control messages. |
+ if (msg.routing_id() == MSG_ROUTING_CONTROL) { |
+ bool handled = true; |
+ IPC_BEGIN_MESSAGE_MAP(Dispatcher, msg) |
+ IPC_MESSAGE_FORWARD(PpapiMsg_ExecuteCallback, &callback_tracker_, |
+ CallbackTracker::ReceiveExecuteSerializedCallback) |
+ IPC_MESSAGE_UNHANDLED(handled = false) |
+ IPC_END_MESSAGE_MAP() |
+ return handled; |
+ } |
+ |
if (msg.routing_id() <= 0 || msg.routing_id() >= API_ID_COUNT) { |
OnInvalidMessageReceived(); |
return true; |