Chromium Code Reviews| Index: components/nacl/browser/nacl_process_host.cc |
| diff --git a/components/nacl/browser/nacl_process_host.cc b/components/nacl/browser/nacl_process_host.cc |
| index 033502986c932dc6c41873e3eb18163df66670dd..624d2180c08a4a883e23742cb6e89210df8febc8 100644 |
| --- a/components/nacl/browser/nacl_process_host.cc |
| +++ b/components/nacl/browser/nacl_process_host.cc |
| @@ -821,6 +821,30 @@ bool NaClProcessHost::StartNaClExecution() { |
| // Enable PPAPI proxy channel creation only for renderer processes. |
| params.enable_ipc_proxy = enable_ppapi_proxy(); |
| + // Currently, non-SFI mode is supported only on Linux. |
| +#if defined(OS_LINUX) |
| + if (params.enable_ipc_proxy && uses_nonsfi_mode_) { |
|
Mark Seaborn
2015/04/15 20:52:05
Nit: At the moment, uses_nonsfi_mode_ implies enab
hidehiko
2015/05/12 18:47:51
Done.
|
| + if (!IPC::SocketPair(¶ms.browser_server_ppapi_fd.fd, |
| + ¶ms.browser_client_ppapi_fd.fd) || |
| + !IPC::SocketPair(¶ms.renderer_server_ppapi_fd.fd, |
|
Mark Seaborn
2015/04/15 20:52:05
If the subsequent IPC::SocketPair() calls fail, wo
Mark Seaborn
2015/05/12 06:46:10
I guess you're trying to clean up that pre-existin
hidehiko
2015/05/12 18:47:51
Ok, done.
|
| + ¶ms.renderer_client_ppapi_fd.fd) || |
| + !IPC::SocketPair(¶ms.manifest_service_server_fd.fd, |
| + ¶ms.manifest_service_client_fd.fd) || |
| + !IPC::SocketPair(¶ms.trusted_channel_server_fd.fd, |
| + ¶ms.trusted_channel_client_fd.fd)) { |
| + return false; |
| + } |
| + params.browser_server_ppapi_fd.auto_close = true; |
| + params.browser_client_ppapi_fd.auto_close = true; |
|
Mark Seaborn
2015/04/15 20:52:05
Notice how the NaCl loader process is receiving th
hidehiko
2015/05/12 18:47:51
Done.
|
| + params.renderer_server_ppapi_fd.auto_close = true; |
| + params.renderer_client_ppapi_fd.auto_close = true; |
| + params.manifest_service_server_fd.auto_close = true; |
| + params.manifest_service_client_fd.auto_close = true; |
| + params.trusted_channel_server_fd.auto_close = true; |
| + params.trusted_channel_client_fd.auto_close = true; |
| + } |
| +#endif |
| + |
| params.process_type = process_type_; |
| bool enable_nacl_debug = enable_debug_stub_ && |
| NaClBrowser::GetDelegate()->URLMatchesDebugPatterns(manifest_url_); |