| Index: chrome/nacl/nacl_ipc_adapter.cc
|
| diff --git a/chrome/nacl/nacl_ipc_adapter.cc b/chrome/nacl/nacl_ipc_adapter.cc
|
| index c615a05b18cf46fd215ef82e8071e884bc611640..425695aff5396d6bd3237cfaf4fb6a2d24c54de1 100644
|
| --- a/chrome/nacl/nacl_ipc_adapter.cc
|
| +++ b/chrome/nacl/nacl_ipc_adapter.cc
|
| @@ -18,6 +18,7 @@
|
| #include "native_client/src/trusted/desc/nacl_desc_base.h"
|
| #include "native_client/src/trusted/desc/nacl_desc_custom.h"
|
| #include "native_client/src/trusted/desc/nacl_desc_imc_shm.h"
|
| +#include "native_client/src/trusted/desc/nacl_desc_io.h"
|
| #include "native_client/src/trusted/desc/nacl_desc_sync_socket.h"
|
| #include "native_client/src/trusted/desc/nacl_desc_wrapper.h"
|
| #include "ppapi/proxy/ppapi_messages.h"
|
| @@ -368,7 +369,7 @@ bool NaClIPCAdapter::OnMessageReceived(const IPC::Message& msg) {
|
| uint32_t size = iter->size();
|
| nacl_desc.reset(new NaClDescWrapper(NaClDescImcShmMake(
|
| #if defined(OS_WIN)
|
| - reinterpret_cast<const NaClHandle>(shm_handle),
|
| + shm_handle,
|
| #else
|
| shm_handle.fd,
|
| #endif
|
| @@ -378,7 +379,7 @@ bool NaClIPCAdapter::OnMessageReceived(const IPC::Message& msg) {
|
| case ppapi::proxy::SerializedHandle::SOCKET: {
|
| nacl_desc.reset(new NaClDescWrapper(NaClDescSyncSocketMake(
|
| #if defined(OS_WIN)
|
| - reinterpret_cast<const NaClHandle>(iter->descriptor())
|
| + iter->descriptor()
|
| #else
|
| iter->descriptor().fd
|
| #endif
|
| @@ -408,8 +409,13 @@ bool NaClIPCAdapter::OnMessageReceived(const IPC::Message& msg) {
|
| break;
|
| }
|
| case ppapi::proxy::SerializedHandle::FILE:
|
| - // TODO(raymes): Handle file handles for NaCl.
|
| - NOTIMPLEMENTED();
|
| + nacl_desc.reset(new NaClDescWrapper(NaClDescIoDescMakeFromHandle(
|
| +#if defined(OS_WIN)
|
| + iter->descriptor()
|
| +#else
|
| + iter->descriptor().fd
|
| +#endif
|
| + )));
|
| break;
|
| case ppapi::proxy::SerializedHandle::INVALID: {
|
| // Nothing to do. TODO(dmichael): Should we log this? Or is it
|
| @@ -548,4 +554,3 @@ void NaClIPCAdapter::SaveMessage(const IPC::Message& msg,
|
| rewritten_msg->SetData(header, msg.payload(), msg.payload_size());
|
| locked_data_.to_be_received_.push(rewritten_msg);
|
| }
|
| -
|
|
|