diff options
author | robertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-26 19:46:26 +0000 |
---|---|---|
committer | robertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-26 19:46:26 +0000 |
commit | 99372841aea3f058340e82a09c7f0d64a7d9ed47 (patch) | |
tree | cfe1c76fcfed564131432222d626edef7debbca0 /chrome_frame/cfproxy_support.cc | |
parent | 5561a2f81f61f37604552f6c36c2d5b1a52336af (diff) | |
download | chromium_src-99372841aea3f058340e82a09c7f0d64a7d9ed47.zip chromium_src-99372841aea3f058340e82a09c7f0d64a7d9ed47.tar.gz chromium_src-99372841aea3f058340e82a09c7f0d64a7d9ed47.tar.bz2 |
Remove the \servers build output directory and place Chrome Frame parts into the root output folder next to chrome.exe et al.
Also add a more helpful error message when failing to register the Chrome Frame dll.
Review URL: http://codereview.chromium.org/8013001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102780 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/cfproxy_support.cc')
-rw-r--r-- | chrome_frame/cfproxy_support.cc | 61 |
1 files changed, 32 insertions, 29 deletions
diff --git a/chrome_frame/cfproxy_support.cc b/chrome_frame/cfproxy_support.cc index 4e7d8070..777c854 100644 --- a/chrome_frame/cfproxy_support.cc +++ b/chrome_frame/cfproxy_support.cc @@ -275,35 +275,38 @@ std::string GenerateChannelId() { std::wstring BuildCmdLine(const std::string& channel_id, const FilePath& profile_path, const std::wstring& extra_args) { - scoped_ptr<CommandLine> command_line( - chrome_launcher::CreateLaunchCommandLine()); - command_line->AppendSwitchASCII(switches::kAutomationClientChannelID, - channel_id); - // Run Chrome in Chrome Frame mode. In practice, this modifies the paths - // and registry keys that Chrome looks in via the BrowserDistribution - // mechanism. - command_line->AppendSwitch(switches::kChromeFrame); - // Chrome Frame never wants Chrome to start up with a First Run UI. - command_line->AppendSwitch(switches::kNoFirstRun); - command_line->AppendSwitch(switches::kDisablePopupBlocking); - -#ifndef NDEBUG - // Disable the "Whoa! Chrome has crashed." dialog, because that isn't very - // useful for Chrome Frame users. - command_line->AppendSwitch(switches::kNoErrorDialogs); -#endif - - // In headless mode runs like reliability test runs we want full crash dumps - // from chrome. - if (IsHeadlessMode()) - command_line->AppendSwitch(switches::kFullMemoryCrashReport); - - command_line->AppendSwitchPath(switches::kUserDataDir, profile_path); - - std::wstring command_line_string(command_line->GetCommandLineString()); - if (!extra_args.empty()) { - command_line_string.append(L" "); - command_line_string.append(extra_args); + std::wstring command_line_string; + scoped_ptr<CommandLine> command_line; + if (chrome_launcher::CreateLaunchCommandLine(&command_line)) { + command_line->AppendSwitchASCII(switches::kAutomationClientChannelID, + channel_id); + // Run Chrome in Chrome Frame mode. In practice, this modifies the paths + // and registry keys that Chrome looks in via the BrowserDistribution + // mechanism. + command_line->AppendSwitch(switches::kChromeFrame); + // Chrome Frame never wants Chrome to start up with a First Run UI. + command_line->AppendSwitch(switches::kNoFirstRun); + command_line->AppendSwitch(switches::kDisablePopupBlocking); + + #ifndef NDEBUG + // Disable the "Whoa! Chrome has crashed." dialog, because that isn't very + // useful for Chrome Frame users. + command_line->AppendSwitch(switches::kNoErrorDialogs); + #endif + + // In headless mode runs like reliability test runs we want full crash dumps + // from chrome. + if (IsHeadlessMode()) + command_line->AppendSwitch(switches::kFullMemoryCrashReport); + + command_line->AppendSwitchPath(switches::kUserDataDir, profile_path); + + command_line_string = command_line->GetCommandLineString(); + if (!extra_args.empty()) { + command_line_string.append(L" "); + command_line_string.append(extra_args); + } } + return command_line_string; } |