Index: ppapi/host/ppapi_host.cc |
diff --git a/ppapi/host/ppapi_host.cc b/ppapi/host/ppapi_host.cc |
index cbb989b5dc0c1fd4ba2822d90451577f11e98075..130bc875569dcd61fe1d318ea682f5db927431a6 100644 |
--- a/ppapi/host/ppapi_host.cc |
+++ b/ppapi/host/ppapi_host.cc |
@@ -12,11 +12,14 @@ |
#include "ppapi/host/resource_host.h" |
#include "ppapi/proxy/ppapi_messages.h" |
#include "ppapi/proxy/resource_message_params.h" |
+#include "ppapi/proxy/serialized_handle.h" |
#include "ppapi/shared_impl/host_resource.h" |
namespace ppapi { |
namespace host { |
+using proxy::SerializedHandle; |
+ |
namespace { |
// Put a cap on the maximum number of resources so we don't explode if the |
@@ -99,11 +102,23 @@ void PpapiHost::SendReply(const ReplyMessageContext& context, |
void PpapiHost::SendUnsolicitedReply(PP_Resource resource, |
const IPC::Message& msg) { |
- TRACE_EVENT2("ppapi proxy", "PpapiHost::SendUnsolicitedReply", |
+ SendUnsolicitedReplyWithHandles( |
+ resource, msg, std::vector<SerializedHandle>()); |
+} |
+ |
+void PpapiHost::SendUnsolicitedReplyWithHandles( |
+ PP_Resource resource, |
+ const IPC::Message& msg, |
+ const std::vector<SerializedHandle>& handles) { |
+ TRACE_EVENT2("ppapi proxy", "PpapiHost::SendUnsolicitedReplyWithHandles", |
"Class", IPC_MESSAGE_ID_CLASS(msg.type()), |
"Line", IPC_MESSAGE_ID_LINE(msg.type())); |
DCHECK(resource); // If this fails, host is probably pending. |
proxy::ResourceMessageReplyParams params(resource, 0); |
+ for (std::vector<SerializedHandle>::const_iterator it = handles.begin(); |
+ it != handles.end(); ++it) { |
+ params.AppendHandle(*it); |
+ } |
Send(new PpapiPluginMsg_ResourceReply(params, msg)); |
} |