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

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

Issue 1890023002: Revert of mac: Remove POSIX shared memory. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@temp50_base
Patch Set: Created 4 years, 8 months 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 #include <tuple> 9 #include <tuple>
10 #include <utility> 10 #include <utility>
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
226 226
227 private: 227 private:
228 NaClDesc* desc_; 228 NaClDesc* desc_;
229 DISALLOW_COPY_AND_ASSIGN(NaClDescWrapper); 229 DISALLOW_COPY_AND_ASSIGN(NaClDescWrapper);
230 }; 230 };
231 231
232 scoped_ptr<NaClDescWrapper> MakeShmNaClDesc( 232 scoped_ptr<NaClDescWrapper> MakeShmNaClDesc(
233 const base::SharedMemoryHandle& handle, 233 const base::SharedMemoryHandle& handle,
234 size_t size) { 234 size_t size) {
235 #if defined(OS_MACOSX) 235 #if defined(OS_MACOSX)
236 return scoped_ptr<NaClDescWrapper>(new NaClDescWrapper( 236 if (handle.GetType() == base::SharedMemoryHandle::MACH) {
237 NaClDescImcShmMachMake(handle.GetMemoryObject(), size))); 237 return scoped_ptr<NaClDescWrapper>(new NaClDescWrapper(
238 #else 238 NaClDescImcShmMachMake(handle.GetMemoryObject(), size)));
239 }
240 CHECK_EQ(base::SharedMemoryHandle::POSIX, handle.GetType());
241 #endif
242
239 return scoped_ptr<NaClDescWrapper>(new NaClDescWrapper(NaClDescImcShmMake( 243 return scoped_ptr<NaClDescWrapper>(new NaClDescWrapper(NaClDescImcShmMake(
240 #if defined(OS_WIN) 244 #if defined(OS_WIN)
241 handle.GetHandle(), 245 handle.GetHandle(),
242 #else 246 #else
243 base::SharedMemory::GetFdFromSharedMemoryHandle(handle), 247 base::SharedMemory::GetFdFromSharedMemoryHandle(handle),
244 #endif 248 #endif
245 size))); 249 size)));
246 #endif
247 } 250 }
248 251
249 } // namespace 252 } // namespace
250 253
251 class NaClIPCAdapter::RewrittenMessage 254 class NaClIPCAdapter::RewrittenMessage
252 : public base::RefCounted<RewrittenMessage> { 255 : public base::RefCounted<RewrittenMessage> {
253 public: 256 public:
254 RewrittenMessage(); 257 RewrittenMessage();
255 258
256 bool is_consumed() const { return data_read_cursor_ == data_len_; } 259 bool is_consumed() const { return data_read_cursor_ == data_len_; }
(...skipping 581 matching lines...) Expand 10 before | Expand all | Expand 10 after
838 header.flags = msg.flags(); 841 header.flags = msg.flags();
839 header.num_fds = static_cast<uint16_t>(rewritten_msg->desc_count()); 842 header.num_fds = static_cast<uint16_t>(rewritten_msg->desc_count());
840 843
841 rewritten_msg->SetData(header, msg.payload(), msg.payload_size()); 844 rewritten_msg->SetData(header, msg.payload(), msg.payload_size());
842 locked_data_.to_be_received_.push(rewritten_msg); 845 locked_data_.to_be_received_.push(rewritten_msg);
843 } 846 }
844 847
845 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) { 848 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) {
846 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags); 849 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags);
847 } 850 }
OLDNEW
« no previous file with comments | « base/memory/shared_memory_unittest.cc ('k') | content/renderer/media/video_capture_message_filter_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698