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

Unified Diff: chrome/gpu/gpu_channel.cc

Issue 5598010: Convert over to channel handles (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Fixed up bad whitespace Created 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/gpu/gpu_channel.cc
diff --git a/chrome/gpu/gpu_channel.cc b/chrome/gpu/gpu_channel.cc
index 10641edb99290a045065760ad415faed166d5547..56a38cc4194d39039721223f4ea9a4be10d21c29 100644
--- a/chrome/gpu/gpu_channel.cc
+++ b/chrome/gpu/gpu_channel.cc
@@ -24,24 +24,12 @@
#endif
GpuChannel::GpuChannel(int renderer_id)
- : renderer_id_(renderer_id)
-#if defined(OS_POSIX)
- , renderer_fd_(-1)
-#endif
-{
+ : renderer_id_(renderer_id) {
const CommandLine* command_line = CommandLine::ForCurrentProcess();
log_messages_ = command_line->HasSwitch(switches::kLogPluginMessages);
}
GpuChannel::~GpuChannel() {
-#if defined(OS_POSIX)
- IPC::RemoveAndCloseChannelSocket(GetChannelName());
-
- // If we still have the renderer FD, close it.
- if (renderer_fd_ != -1) {
- close(renderer_fd_);
- }
-#endif
}
void GpuChannel::OnChannelConnected(int32 peer_pid) {
@@ -242,15 +230,6 @@ bool GpuChannel::Init() {
// Map renderer ID to a (single) channel to that process.
std::string channel_name = GetChannelName();
-#if defined(OS_POSIX)
- // This gets called when the GpuChannel is initially created. At this
- // point, create the socketpair and assign the GPU side FD to the channel
- // name. Keep the renderer side FD as a member variable in the PluginChannel
- // to be able to transmit it through IPC.
- int gpu_fd;
- IPC::SocketPair(&gpu_fd, &renderer_fd_);
- IPC::AddChannelSocket(channel_name, gpu_fd);
-#endif
channel_.reset(new IPC::SyncChannel(
channel_name, IPC::Channel::MODE_SERVER, this,
ChildProcess::current()->io_message_loop(), false,
@@ -262,3 +241,14 @@ bool GpuChannel::Init() {
std::string GpuChannel::GetChannelName() {
return StringPrintf("%d.r%d", base::GetCurrentProcId(), renderer_id_);
}
+
+#if defined(OS_POSIX)
+int GpuChannel::GetRendererFileDescriptor() {
+ int fd = -1;
+ if (channel_.get()) {
+ fd = channel_->GetClientFileDescriptor();
+ }
+ return fd;
+}
+#endif // defined(OS_POSIX)
+
« no previous file with comments | « chrome/gpu/gpu_channel.h ('k') | chrome/gpu/gpu_thread.cc » ('j') | ipc/ipc_channel.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698