diff options
author | grt@chromium.org <grt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-18 20:08:58 +0000 |
---|---|---|
committer | grt@chromium.org <grt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-18 20:08:58 +0000 |
commit | 30b3a57d256d39847a3ed75c813bd75688f3fd24 (patch) | |
tree | 9a5b107ba4b0b99d29e96e48052207137d401be1 /chrome/installer/setup | |
parent | 167b5f97efe2e9fc2eda0edc04f9a51dd5fc359e (diff) | |
download | chromium_src-30b3a57d256d39847a3ed75c813bd75688f3fd24.zip chromium_src-30b3a57d256d39847a3ed75c813bd75688f3fd24.tar.gz chromium_src-30b3a57d256d39847a3ed75c813bd75688f3fd24.tar.bz2 |
Add product-specific flags to the rename command in the registry. This fixes a regression that prevented in-place upgrades of Chrome Frame from working.
BUG=73329
TEST=Follow the steps in the bug. Between steps 4 and 5, check that the "cmd" registry value in HKLM\Software\Google\Update\Clients\{8BA986DA-5100-405E-AA35-86F34A02ACBF} contains "--chrome-frame".
Review URL: http://codereview.chromium.org/6541029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75412 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/installer/setup')
-rw-r--r-- | chrome/installer/setup/install_worker.cc | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/chrome/installer/setup/install_worker.cc b/chrome/installer/setup/install_worker.cc index 0717a34..aaa8112 100644 --- a/chrome/installer/setup/install_worker.cc +++ b/chrome/installer/setup/install_worker.cc @@ -430,15 +430,12 @@ bool AppendPostInstallTasks(const InstallerState& installer_state, .Append(setup_path.BaseName())); CommandLine rename(installer_path); - rename.AppendSwitch(installer::switches::kRenameChromeExe); + rename.AppendSwitch(switches::kRenameChromeExe); if (installer_state.system_install()) - rename.AppendSwitch(installer::switches::kSystemLevel); + rename.AppendSwitch(switches::kSystemLevel); - if (InstallUtil::IsChromeSxSProcess()) - rename.AppendSwitch(installer::switches::kChromeSxS); - - if (installer_state.is_multi_install()) - rename.AppendSwitch(installer::switches::kMultiInstall); + if (installer_state.verbose_logging()) + rename.AppendSwitch(switches::kVerboseLogging); std::wstring version_key; for (size_t i = 0; i < products.size(); ++i) { @@ -456,11 +453,13 @@ bool AppendPostInstallTasks(const InstallerState& installer_state, // will check the key and run the command, so we add it for all. // After the first run, the subsequent runs should just be noops. // (see Upgrade::SwapNewChromeExeIfPresent). + CommandLine product_rename_cmd(rename); + products[i]->AppendProductFlags(&product_rename_cmd); in_use_update_work_items->AddSetRegValueWorkItem( root, version_key, google_update::kRegRenameCmdField, - rename.command_line_string(), + product_rename_cmd.command_line_string(), true); } |