Index: ppapi/proxy/nacl_message_scanner.cc |
diff --git a/ppapi/proxy/nacl_message_scanner.cc b/ppapi/proxy/nacl_message_scanner.cc |
index 1f7882a56698e7b1fc5ff64caed58f2685f5af34..4120beb7457120f8150811a6dda2493fd5f28d71 100644 |
--- a/ppapi/proxy/nacl_message_scanner.cc |
+++ b/ppapi/proxy/nacl_message_scanner.cc |
@@ -53,9 +53,12 @@ void WriteHandle(int handle_index, |
IPC::Message* msg) { |
SerializedHandle::WriteHeader(handle.header(), msg); |
- // Now write the handle itself in POSIX style. |
- msg->WriteBool(true); // valid == true |
- msg->WriteInt(handle_index); |
+ if (handle.type() != SerializedHandle::INVALID) { |
+ // Now write the handle itself in POSIX style. |
+ // See ParamTraits<FileDescriptor>::Read for where these values are read. |
+ msg->WriteBool(true); // valid == true |
+ msg->WriteInt(handle_index); |
+ } |
} |
// Define overloads for each kind of message parameter that requires special |
@@ -318,6 +321,7 @@ bool NaClMessageScanner::ScanMessage( |
CASE_FOR_MESSAGE(PpapiMsg_PPBAudio_NotifyAudioStreamCreated) |
CASE_FOR_MESSAGE(PpapiMsg_PPPMessaging_HandleMessage) |
CASE_FOR_MESSAGE(PpapiPluginMsg_ResourceReply) |
+ CASE_FOR_REPLY(PpapiHostMsg_OpenResource) |
CASE_FOR_REPLY(PpapiHostMsg_PPBGraphics3D_Create) |
CASE_FOR_REPLY(PpapiHostMsg_PPBGraphics3D_CreateTransferBuffer) |
CASE_FOR_REPLY(PpapiHostMsg_PPBImageData_CreateSimple) |