Chromium Code Reviews| 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 be9ccbe9a53ffdaca89af400a5dade345ab7846c..b32ee100bb41f0721734aa9d52a53eb52a04b671 100644 |
| --- a/components/nacl/renderer/manifest_service_channel.cc |
| +++ b/components/nacl/renderer/manifest_service_channel.cc |
| @@ -89,14 +89,15 @@ void ManifestServiceChannel::DidOpenResource(IPC::Message* reply, |
| if (file.IsValid()) { |
| IPC::PlatformFileForTransit file_for_transit; |
| #if defined(OS_WIN) |
| + HANDLE raw_handle = INVALID_HANDLE_VALUE; |
| bool ok = content::BrokerDuplicateHandle( |
|
Mark Seaborn
2016/03/29 19:24:09
So this case would get converted by a later change
erikchen
2016/03/29 20:57:42
yes. Trying to keep this change as small as possib
|
| - file.TakePlatformFile(), |
| - peer_pid_, |
| - &file_for_transit, |
| + file.TakePlatformFile(), peer_pid_, &raw_handle, |
| 0, // desired_access is 0 since we're using DUPLICATE_SAME_ACCESS. |
| DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE); |
| - if (ok) |
| + if (ok) { |
| + file_for_transit = IPC::PlatformFileForTransit(raw_handle, peer_pid_); |
| handle.set_file_handle(file_for_transit, PP_FILEOPENFLAG_READ, 0); |
| + } |
| #else |
| file_for_transit = base::FileDescriptor(std::move(file)); |
| handle.set_file_handle(file_for_transit, PP_FILEOPENFLAG_READ, 0); |