summaryrefslogtreecommitdiffstats
path: root/chrome/installer
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/installer')
-rw-r--r--chrome/installer/setup/uninstall.cc24
1 files changed, 18 insertions, 6 deletions
diff --git a/chrome/installer/setup/uninstall.cc b/chrome/installer/setup/uninstall.cc
index c812e79..f0d7a58 100644
--- a/chrome/installer/setup/uninstall.cc
+++ b/chrome/installer/setup/uninstall.cc
@@ -25,6 +25,7 @@
#include "chrome/installer/util/channel_info.h"
#include "chrome/installer/util/delete_after_reboot_helper.h"
#include "chrome/installer/util/google_update_constants.h"
+#include "chrome/installer/util/google_update_settings.h"
#include "chrome/installer/util/helper.h"
#include "chrome/installer/util/install_util.h"
#include "chrome/installer/util/installation_state.h"
@@ -118,6 +119,21 @@ void ProcessQuickEnableWorkItems(
LOG(ERROR) << "Failed to update quick-enable-cf command.";
}
+void ClearRlzProductState() {
+ const rlz_lib::AccessPoint points[] = {rlz_lib::CHROME_OMNIBOX,
+ rlz_lib::CHROME_HOME_PAGE,
+ rlz_lib::NO_ACCESS_POINT};
+
+ rlz_lib::ClearProductState(rlz_lib::CHROME, points);
+
+ // If chrome has been reactivated, clear all events for this brand as well.
+ std::wstring reactivation_brand;
+ if (GoogleUpdateSettings::GetReactivationBrand(&reactivation_brand)) {
+ rlz_lib::SupplementaryBranding branding(reactivation_brand.c_str());
+ rlz_lib::ClearProductState(rlz_lib::CHROME, points);
+ }
+}
+
} // namespace
namespace installer {
@@ -689,12 +705,8 @@ InstallStatus UninstallProduct(const InstallationState& original_state,
// Chrome is not in use so lets uninstall Chrome by deleting various files
// and registry entries. Here we will just make best effort and keep going
// in case of errors.
- if (is_chrome) {
- const rlz_lib::AccessPoint access_points[] = {rlz_lib::CHROME_OMNIBOX,
- rlz_lib::CHROME_HOME_PAGE,
- rlz_lib::NO_ACCESS_POINT};
- rlz_lib::ClearProductState(rlz_lib::CHROME, access_points);
- }
+ if (is_chrome)
+ ClearRlzProductState();
// First delete shortcuts from Start->Programs, Desktop & Quick Launch.
DeleteChromeShortcuts(installer_state, product);