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

Side by Side Diff: ppapi/proxy/proxy_channel.cc

Issue 1166443004: Further clean up pepper's use of SharedMemory. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@shared_memory_make_class3_base
Patch Set: Fix compile error on windows. Created 5 years, 6 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "ppapi/proxy/proxy_channel.h" 5 #include "ppapi/proxy/proxy_channel.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "ipc/ipc_platform_file.h" 8 #include "ipc/ipc_platform_file.h"
9 #include "ipc/ipc_test_sink.h" 9 #include "ipc/ipc_test_sink.h"
10 10
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 } 69 }
70 return IPC::InvalidPlatformFileForTransit(); 70 return IPC::InvalidPlatformFileForTransit();
71 } 71 }
72 DCHECK(peer_pid_ != base::kNullProcessId); 72 DCHECK(peer_pid_ != base::kNullProcessId);
73 return delegate_->ShareHandleWithRemote(handle, peer_pid_, 73 return delegate_->ShareHandleWithRemote(handle, peer_pid_,
74 should_close_source); 74 should_close_source);
75 } 75 }
76 76
77 base::SharedMemoryHandle ProxyChannel::ShareSharedMemoryHandleWithRemote( 77 base::SharedMemoryHandle ProxyChannel::ShareSharedMemoryHandleWithRemote(
78 const base::SharedMemoryHandle& handle) { 78 const base::SharedMemoryHandle& handle) {
79 #if defined(OS_POSIX) 79 if (!channel_.get())
80 return ShareHandleWithRemote(handle.fd, false); 80 return base::SharedMemory::NULLHandle();
81 #elif defined(OS_WIN) 81
82 return ShareHandleWithRemote(handle, false); 82 DCHECK(peer_pid_ != base::kNullProcessId);
83 #else 83 return delegate_->ShareSharedMemoryHandleWithRemote(handle, peer_pid_);
84 #error Not implemented.
85 #endif
86 } 84 }
87 85
88 bool ProxyChannel::Send(IPC::Message* msg) { 86 bool ProxyChannel::Send(IPC::Message* msg) {
89 if (test_sink_) 87 if (test_sink_)
90 return test_sink_->Send(msg); 88 return test_sink_->Send(msg);
91 if (channel_.get()) 89 if (channel_.get())
92 return channel_->Send(msg); 90 return channel_->Send(msg);
93 91
94 // Remote side crashed, drop this message. 92 // Remote side crashed, drop this message.
95 delete msg; 93 delete msg;
96 return false; 94 return false;
97 } 95 }
98 96
99 } // namespace proxy 97 } // namespace proxy
100 } // namespace ppapi 98 } // namespace ppapi
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698