diff options
-rw-r--r-- | chrome/chrome_exe.gypi | 11 | ||||
-rw-r--r-- | chrome/nacl/nacl_fork_delegate_linux.cc | 11 |
2 files changed, 15 insertions, 7 deletions
diff --git a/chrome/chrome_exe.gypi b/chrome/chrome_exe.gypi index f028efd..8207d80 100644 --- a/chrome/chrome_exe.gypi +++ b/chrome/chrome_exe.gypi @@ -453,6 +453,17 @@ '../third_party/adobe/flash/flash_player.gyp:flash_player', ], }], + ['OS=="linux"', { + 'conditions': [ + # For now, do not build nacl_helper on ARM + ['target_arch!="arm"', { + 'dependencies': [ + 'nacl_helper_bootstrap', + 'nacl_helper', + ], + }], + ], + }], ['OS=="mac"', { 'dependencies': [ # On Mac, make sure we've built chrome_dll, which contains all of diff --git a/chrome/nacl/nacl_fork_delegate_linux.cc b/chrome/nacl/nacl_fork_delegate_linux.cc index 6623846..828cb6e 100644 --- a/chrome/nacl/nacl_fork_delegate_linux.cc +++ b/chrome/nacl/nacl_fork_delegate_linux.cc @@ -46,22 +46,19 @@ void NaClForkDelegate::Init(const bool sandboxed, fds_to_map.push_back(std::make_pair(fds[1], kNaClZygoteDescriptor)); fds_to_map.push_back(std::make_pair(sandboxdesc, kNaClSandboxDescriptor)); ready_ = false; - return; // Disable nacl_helper while fixing some issues. - FilePath helper_exe; FilePath helper_bootstrap_exe; if (PathService::Get(chrome::FILE_NACL_HELPER, &helper_exe) && PathService::Get(chrome::FILE_NACL_HELPER_BOOTSTRAP, &helper_bootstrap_exe) && !RunningOnValgrind()) { - CommandLine::StringVector argv = CommandLine::ForCurrentProcess()->argv(); - argv[0] = helper_bootstrap_exe.value(); - argv[1] = helper_exe.value(); - argv[2] = kNaClHelperAtZero; + CommandLine cmd_line(helper_bootstrap_exe); + cmd_line.AppendArgPath(helper_exe); + cmd_line.AppendArgNative(kNaClHelperAtZero); base::LaunchOptions options; options.fds_to_remap = &fds_to_map; options.clone_flags = CLONE_FS | SIGCHLD; - ready_ = base::LaunchProcess(argv, options, NULL); + ready_ = base::LaunchProcess(cmd_line.argv(), options, NULL); // parent and error cases are handled below } if (HANDLE_EINTR(close(fds[1])) != 0) |