Index: components/nacl/loader/nacl_ipc_adapter.cc |
diff --git a/components/nacl/loader/nacl_ipc_adapter.cc b/components/nacl/loader/nacl_ipc_adapter.cc |
index 3b1110251d1905d6fa2b9aa914dda0a3921d380c..9100ed6fbf99776fd5f1bc24695ce493ce82d993 100644 |
--- a/components/nacl/loader/nacl_ipc_adapter.cc |
+++ b/components/nacl/loader/nacl_ipc_adapter.cc |
@@ -234,9 +234,16 @@ std::unique_ptr<NaClDescWrapper> MakeShmNaClDesc( |
const base::SharedMemoryHandle& handle, |
size_t size) { |
#if defined(OS_MACOSX) |
- return std::unique_ptr<NaClDescWrapper>(new NaClDescWrapper( |
- NaClDescImcShmMachMake(handle.GetMemoryObject(), size))); |
-#else |
+ if (handle.GetType() == base::SharedMemoryHandle::MACH) { |
+ return std::unique_ptr<NaClDescWrapper>(new NaClDescWrapper( |
+ NaClDescImcShmMachMake(handle.GetMemoryObject(), size))); |
+ } else { |
+ // We should never pass POSIX shared memory over IPC. |
+ CHECK(false); |
+ return nullptr; |
+ } |
+#endif |
+ |
return std::unique_ptr<NaClDescWrapper>( |
new NaClDescWrapper(NaClDescImcShmMake( |
#if defined(OS_WIN) |
@@ -245,7 +252,6 @@ std::unique_ptr<NaClDescWrapper> MakeShmNaClDesc( |
base::SharedMemory::GetFdFromSharedMemoryHandle(handle), |
#endif |
size))); |
-#endif |
} |
} // namespace |