Index: ppapi/proxy/proxy_channel.cc |
diff --git a/ppapi/proxy/proxy_channel.cc b/ppapi/proxy/proxy_channel.cc |
index 7e647553e3ea345ecb51aaeb3b60d7d98ff562cc..2784e4b978bce53cbe57bebd930fd000bcebc705 100644 |
--- a/ppapi/proxy/proxy_channel.cc |
+++ b/ppapi/proxy/proxy_channel.cc |
@@ -76,13 +76,11 @@ IPC::PlatformFileForTransit ProxyChannel::ShareHandleWithRemote( |
base::SharedMemoryHandle ProxyChannel::ShareSharedMemoryHandleWithRemote( |
const base::SharedMemoryHandle& handle) { |
-#if defined(OS_POSIX) |
- return ShareHandleWithRemote(handle.fd, false); |
-#elif defined(OS_WIN) |
- return ShareHandleWithRemote(handle, false); |
-#else |
-#error Not implemented. |
-#endif |
+ if (!channel_.get()) |
+ return base::SharedMemory::NULLHandle(); |
+ |
+ DCHECK(peer_pid_ != base::kNullProcessId); |
+ return delegate_->ShareSharedMemoryHandleWithRemote(handle, peer_pid_); |
} |
bool ProxyChannel::Send(IPC::Message* msg) { |