Index: chrome/installer/setup/setup_main.cc |
diff --git a/chrome/installer/setup/setup_main.cc b/chrome/installer/setup/setup_main.cc |
index 139b8274e9eb5c81aba8e38593fc0d1b12a05436..d77b25c9528e008dde968fbd51d6c56103bcb54b 100644 |
--- a/chrome/installer/setup/setup_main.cc |
+++ b/chrome/installer/setup/setup_main.cc |
@@ -1170,6 +1170,17 @@ bool HandleNonInstallCmdLineOptions(const InstallationState& original_state, |
HKEY_LOCAL_MACHINE, suffix, installer_state->target_path(), &tmp); |
} |
*exit_code = tmp; |
+ } else if (cmd_line.HasSwitch(installer::switches::kOnOsUpgrade)) { |
+ const Product* chrome_install = |
+ installer_state->FindProduct(BrowserDistribution::CHROME_BROWSER); |
+ installer::InstallStatus status = installer::HANDLE_OS_UPGRADE_FAILED; |
+ if (chrome_install && |
+ installer::HandleOsUpgradeForBrowser(*installer_state, |
+ *chrome_install, |
+ cmd_line.GetProgram())) { |
+ status = installer::INSTALL_REPAIRED; // Success. |
+ } |
+ *exit_code = InstallUtil::GetInstallReturnCode(status); |
huangs
2012/08/31 20:50:17
Per discussion, this will always be successful.
|
} else if (cmd_line.HasSwitch(installer::switches::kInactiveUserToast)) { |
// Launch the inactive user toast experiment. |
int flavor = -1; |