Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3909)

Unified Diff: chrome/installer/setup/setup_main.cc

Issue 869153004: Support migrating multi-install Chrome to single-install. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: tweaks Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/installer/setup/setup_main.cc
diff --git a/chrome/installer/setup/setup_main.cc b/chrome/installer/setup/setup_main.cc
index 9017b335666f65a4d7c77fe4500673d177624352..ad8dd499786627507a3936a8da2b80c2f061bafd 100644
--- a/chrome/installer/setup/setup_main.cc
+++ b/chrome/installer/setup/setup_main.cc
@@ -449,25 +449,7 @@ bool CheckMultiInstallConditions(const InstallationState& original_state,
chrome = installer_state->AddProduct(&multi_chrome);
VLOG(1) << "Upgrading existing Chrome browser in multi-install mode.";
}
- } else {
- // This is a non-multi installation.
-
- // Check for an existing installation of the product.
- const ProductState* product_state = original_state.GetProductState(
- system_level, products[0]->distribution()->GetType());
- if (product_state != NULL) {
- // Block downgrades from multi-install to single-install.
- if (product_state->is_multi_install()) {
- LOG(ERROR) << "Multi-install "
- << products[0]->distribution()->GetDisplayName()
- << " exists; aborting single install.";
- *status = installer::MULTI_INSTALLATION_EXISTS;
- installer_state->WriteInstallerResult(*status,
- IDS_INSTALL_MULTI_INSTALLATION_EXISTS_BASE, NULL);
- return false;
- }
- }
- }
+ } // else migrate multi-install Chrome to single-install.
return true;
}
@@ -1329,11 +1311,9 @@ void UninstallMultiChromeFrameIfPresent(const base::CommandLine& cmd_line,
const MasterPreferences& prefs,
InstallationState* original_state,
InstallerState* installer_state) {
- // Early exit if not installing or updating multi-install product(s).
- if (installer_state->operation() != InstallerState::MULTI_INSTALL &&
- installer_state->operation() != InstallerState::MULTI_UPDATE) {
+ // Early exit if not installing or updating.
+ if (installer_state->operation() == InstallerState::UNINSTALL)
return;
- }
// Early exit if Chrome Frame is not present as multi-install.
const ProductState* chrome_frame_state =

Powered by Google App Engine
This is Rietveld 408576698