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

Unified Diff: content/ppapi_plugin/ppapi_thread.cc

Issue 2094623002: Use ChannelMojo for plugin-renderer channels. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mojo-ipc-channel-handle
Patch Set: rebase Created 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | content/renderer/pepper/host_dispatcher_wrapper.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/ppapi_plugin/ppapi_thread.cc
diff --git a/content/ppapi_plugin/ppapi_thread.cc b/content/ppapi_plugin/ppapi_thread.cc
index ea5e4bc341e1bb6fa2524a3f7a1e4f85b2c32f2c..df2e875bd8db1ee14c2baf6abbfa6aa8bf543e38 100644
--- a/content/ppapi_plugin/ppapi_thread.cc
+++ b/content/ppapi_plugin/ppapi_thread.cc
@@ -39,6 +39,7 @@
#include "ipc/ipc_platform_file.h"
#include "ipc/ipc_sync_channel.h"
#include "ipc/ipc_sync_message_filter.h"
+#include "mojo/public/cpp/system/message_pipe.h"
#include "ppapi/c/dev/ppp_network_state_dev.h"
#include "ppapi/c/pp_errors.h"
#include "ppapi/c/ppp.h"
@@ -492,6 +493,8 @@ bool PpapiThread::SetupChannel(base::ProcessId renderer_pid,
plugin_handle.name = IPC::Channel::GenerateVerifiedChannelID(
base::StringPrintf(
"%d.r%d", base::GetCurrentProcId(), renderer_child_id));
+ mojo::MessagePipe message_pipe;
+ plugin_handle.mojo_handle = message_pipe.handle0.release();
ppapi::proxy::ProxyChannel* dispatcher = NULL;
bool init_result = false;
@@ -524,14 +527,7 @@ bool PpapiThread::SetupChannel(base::ProcessId renderer_pid,
}
handle->name = plugin_handle.name;
-#if defined(OS_POSIX)
- // On POSIX, transfer ownership of the renderer-side (client) FD.
- // This ensures this process will be notified when it is closed even if a
- // connection is not established.
dcheng 2016/06/27 02:12:48 How come these checks aren't needed in the Mojo ve
Anand Mistry (off Chromium) 2016/06/27 02:25:59 fds are not used when using ChannelMojo (and the r
dcheng 2016/06/27 03:35:02 OK, so the Mojo handles here are always valid?
Anand Mistry (off Chromium) 2016/06/27 04:52:07 Here, yes. But not necessarily in the receive side
- handle->socket = base::FileDescriptor(dispatcher->TakeRendererFD());
- if (handle->socket.fd == -1)
- return false;
-#endif
+ handle->mojo_handle = message_pipe.handle1.release();
// From here, the dispatcher will manage its own lifetime according to the
// lifetime of the attached channel.
« no previous file with comments | « no previous file | content/renderer/pepper/host_dispatcher_wrapper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698