Index: components/nacl/renderer/manifest_service_channel.cc |
diff --git a/components/nacl/renderer/manifest_service_channel.cc b/components/nacl/renderer/manifest_service_channel.cc |
index cb397038f82760ea310db0e093078bca4035ea41..47d051c250741acf85352cb38eff89bcd44265d2 100644 |
--- a/components/nacl/renderer/manifest_service_channel.cc |
+++ b/components/nacl/renderer/manifest_service_channel.cc |
@@ -11,6 +11,7 @@ |
#include "ipc/ipc_channel.h" |
#include "ipc/ipc_sync_channel.h" |
#include "ppapi/c/pp_errors.h" |
+#include "ppapi/c/ppb_file_io.h" |
#include "ppapi/proxy/ppapi_messages.h" |
namespace nacl { |
@@ -86,12 +87,14 @@ void ManifestServiceChannel::OnOpenResource( |
#if !defined(OS_WIN) |
void ManifestServiceChannel::DidOpenResource( |
IPC::Message* reply, base::File file) { |
+ ppapi::proxy::SerializedHandle h; |
+ if (file.IsValid()) { |
+ h.set_file_handle(base::FileDescriptor(file.Pass()), |
+ PP_FILEOPENFLAG_READ, |
+ 0); |
+ } |
// Here, PlatformFileForTransit is alias of base::FileDescriptor. |
- PpapiHostMsg_OpenResource::WriteReplyParams( |
- reply, |
- ppapi::proxy::SerializedHandle( |
- ppapi::proxy::SerializedHandle::FILE, |
- base::FileDescriptor(file.Pass()))); |
+ PpapiHostMsg_OpenResource::WriteReplyParams(reply, h); |
Send(reply); |
} |
#endif |