Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1239)

Side by Side Diff: components/nacl/loader/nacl_ipc_adapter.cc

Issue 2550723002: Resurrect POSIX shared memory support on mac (Closed)
Patch Set: git cl format Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/nacl/loader/nacl_ipc_adapter.h" 5 #include "components/nacl/loader/nacl_ipc_adapter.h"
6 6
7 #include <limits.h> 7 #include <limits.h>
8 #include <string.h> 8 #include <string.h>
9 9
10 #include <memory> 10 #include <memory>
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
227 227
228 private: 228 private:
229 NaClDesc* desc_; 229 NaClDesc* desc_;
230 DISALLOW_COPY_AND_ASSIGN(NaClDescWrapper); 230 DISALLOW_COPY_AND_ASSIGN(NaClDescWrapper);
231 }; 231 };
232 232
233 std::unique_ptr<NaClDescWrapper> MakeShmNaClDesc( 233 std::unique_ptr<NaClDescWrapper> MakeShmNaClDesc(
234 const base::SharedMemoryHandle& handle, 234 const base::SharedMemoryHandle& handle,
235 size_t size) { 235 size_t size) {
236 #if defined(OS_MACOSX) 236 #if defined(OS_MACOSX)
237 return std::unique_ptr<NaClDescWrapper>(new NaClDescWrapper( 237 if (handle.GetType() == base::SharedMemoryHandle::MACH) {
238 NaClDescImcShmMachMake(handle.GetMemoryObject(), size))); 238 return std::unique_ptr<NaClDescWrapper>(new NaClDescWrapper(
239 NaClDescImcShmMachMake(handle.GetMemoryObject(), size)));
240 } else {
241 CHECK_EQ(base::SharedMemoryHandle::POSIX, handle.GetType());
242 return nullptr;
243 }
239 #else 244 #else
240 return std::unique_ptr<NaClDescWrapper>( 245 return std::unique_ptr<NaClDescWrapper>(
241 new NaClDescWrapper(NaClDescImcShmMake( 246 new NaClDescWrapper(NaClDescImcShmMake(
242 #if defined(OS_WIN) 247 #if defined(OS_WIN)
243 handle.GetHandle(), 248 handle.GetHandle(),
244 #else 249 #else
245 base::SharedMemory::GetFdFromSharedMemoryHandle(handle), 250 base::SharedMemory::GetFdFromSharedMemoryHandle(handle),
246 #endif 251 #endif
247 size))); 252 size)));
248 #endif 253 #endif
(...skipping 592 matching lines...) Expand 10 before | Expand all | Expand 10 after
841 header.flags = msg.flags(); 846 header.flags = msg.flags();
842 header.num_fds = static_cast<uint16_t>(rewritten_msg->desc_count()); 847 header.num_fds = static_cast<uint16_t>(rewritten_msg->desc_count());
843 848
844 rewritten_msg->SetData(header, msg.payload(), msg.payload_size()); 849 rewritten_msg->SetData(header, msg.payload(), msg.payload_size());
845 locked_data_.to_be_received_.push(rewritten_msg); 850 locked_data_.to_be_received_.push(rewritten_msg);
846 } 851 }
847 852
848 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) { 853 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) {
849 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags); 854 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags);
850 } 855 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698