Home | History | Annotate | Download | only in common
      1 // Copyright 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "base/base_switches.h"
      6 #include "base/basictypes.h"
      7 #include "base/command_line.h"
      8 #include "components/nacl/common/nacl_switches.h"
      9 #include "content/public/common/content_switches.h"
     10 
     11 namespace nacl {
     12 
     13 void CopyNaClCommandLineArguments(CommandLine* cmd_line) {
     14   const CommandLine& browser_command_line = *CommandLine::ForCurrentProcess();
     15 
     16   // Propagate the following switches to the NaCl loader command line (along
     17   // with any associated values) if present in the browser command line.
     18   // TODO(gregoryd): check which flags of those below can be supported.
     19   static const char* const kSwitchNames[] = {
     20     switches::kNoSandbox,
     21     switches::kTestNaClSandbox,
     22     switches::kDisableBreakpad,
     23     switches::kFullMemoryCrashReport,
     24     switches::kEnableLogging,
     25     switches::kDisableLogging,
     26     switches::kLoggingLevel,
     27     switches::kEnableDCHECK,
     28     switches::kNoErrorDialogs,
     29 #if defined(OS_MACOSX)
     30     switches::kEnableSandboxLogging,
     31 #endif
     32   };
     33   cmd_line->CopySwitchesFrom(browser_command_line, kSwitchNames,
     34                              arraysize(kSwitchNames));
     35 }
     36 
     37 }  // namespace nacl
     38