diff options
author | rogerta@chromium.org <rogerta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-04 14:55:26 +0000 |
---|---|---|
committer | rogerta@chromium.org <rogerta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-04 14:55:26 +0000 |
commit | 9c68deafbad5602922934ed412750636621ba938 (patch) | |
tree | 5f775f4d556e1bcc4716d9c465d425c95d7c198b /chrome | |
parent | bc191c094b8d5912c807d0dd3d295b2a4ee6eb57 (diff) | |
download | chromium_src-9c68deafbad5602922934ed412750636621ba938.zip chromium_src-9c68deafbad5602922934ed412750636621ba938.tar.gz chromium_src-9c68deafbad5602922934ed412750636621ba938.tar.bz2 |
Make sure to remove RLZ-related registry values on chrome uninstall.
BUG=3486114
TEST=Install chrome with a non-organic brand code. Start it and wait for
the RLZ registry values to be written to HKCU\software\google\common\rlz.
Uninstall chrome and make sure that the registry values are gone. Note
that only the registry keys and value that start with the letter 'C' relate
to chrome; any other that may exist after uninstall are OK.
Review URL: http://codereview.chromium.org/6597089
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76915 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/chrome_installer.gypi | 2 | ||||
-rw-r--r-- | chrome/installer/DEPS | 1 | ||||
-rw-r--r-- | chrome/installer/setup/uninstall.cc | 6 |
3 files changed, 9 insertions, 0 deletions
diff --git a/chrome/chrome_installer.gypi b/chrome/chrome_installer.gypi index 573d209d..e270f7d 100644 --- a/chrome/chrome_installer.gypi +++ b/chrome/chrome_installer.gypi @@ -202,6 +202,8 @@ '<(DEPTH)/chrome_frame/chrome_frame.gyp:chrome_tab_idl', '<(DEPTH)/chrome_frame/chrome_frame.gyp:npchrome_frame', '<(DEPTH)/breakpad/breakpad.gyp:breakpad_handler', + '<(DEPTH)/rlz/rlz.gyp:rlz_lib', + '<(DEPTH)/third_party/zlib/zlib.gyp:zlib', ], 'include_dirs': [ '<(DEPTH)', diff --git a/chrome/installer/DEPS b/chrome/installer/DEPS index 1fa50b3..730780b 100644 --- a/chrome/installer/DEPS +++ b/chrome/installer/DEPS @@ -1,4 +1,5 @@ include_rules = [ + "+rlz", "+third_party/bspatch", "+third_party/lzma_sdk", ] diff --git a/chrome/installer/setup/uninstall.cc b/chrome/installer/setup/uninstall.cc index 2b71dcb..beffd1c 100644 --- a/chrome/installer/setup/uninstall.cc +++ b/chrome/installer/setup/uninstall.cc @@ -32,6 +32,7 @@ #include "chrome/installer/util/self_cleaning_temp_dir.h" #include "chrome/installer/util/shell_util.h" #include "chrome/installer/util/util_constants.h" +#include "rlz/win/lib/rlz_lib.h" // Build-time generated include file. #include "registered_dlls.h" // NOLINT @@ -651,6 +652,11 @@ 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::ClearProductState(rlz_lib::CHROME, access_points); + } // First delete shortcuts from Start->Programs, Desktop & Quick Launch. DeleteChromeShortcuts(installer_state, product); |