diff options
author | gab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-30 22:41:21 +0000 |
---|---|---|
committer | gab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-30 22:41:21 +0000 |
commit | f993f99b6e15d4a332884639ed9729f04f728d84 (patch) | |
tree | cf028faaf8f7a3e11882e9e5a328f268a8c2d148 | |
parent | 501e2d4ea3c5d685fec8b34618a79964fe2945a7 (diff) | |
download | chromium_src-f993f99b6e15d4a332884639ed9729f04f728d84.zip chromium_src-f993f99b6e15d4a332884639ed9729f04f728d84.tar.gz chromium_src-f993f99b6e15d4a332884639ed9729f04f728d84.tar.bz2 |
Chromium didn't have an Active Setup GUID -- fix that.
This would have caused the installer to write straight into Software\Microsoft\Active Setup\Installed Components if Chromium was installed at system-level...
Separated AppGuid from ActiveSetupGuid as the AppGuid is really a Google Update construct only.
R=robertshield@chromium.org
Review URL: https://chromiumcodereview.appspot.com/12041025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179715 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/installer/util/browser_distribution.cc | 7 | ||||
-rw-r--r-- | chrome/installer/util/browser_distribution.h | 3 | ||||
-rw-r--r-- | chrome/installer/util/google_chrome_distribution.cc | 4 | ||||
-rw-r--r-- | chrome/installer/util/google_chrome_distribution.h | 2 | ||||
-rw-r--r-- | chrome/installer/util/google_chrome_distribution_dummy.cc | 5 | ||||
-rw-r--r-- | chrome/installer/util/install_util.cc | 2 |
6 files changed, 22 insertions, 1 deletions
diff --git a/chrome/installer/util/browser_distribution.cc b/chrome/installer/util/browser_distribution.cc index 7f334b3..f447c04 100644 --- a/chrome/installer/util/browser_distribution.cc +++ b/chrome/installer/util/browser_distribution.cc @@ -33,6 +33,9 @@ using installer::MasterPreferences; namespace { +const wchar_t kChromiumActiveSetupGuid[] = + L"{7D2B3E1D-D096-4594-9D8F-A6667F12E0AC}"; + const wchar_t kCommandExecuteImplUuid[] = L"{A2DF06F9-A21A-44A8-8A99-8B9C84F29160}"; @@ -139,6 +142,10 @@ void BrowserDistribution::DoPostUninstallOperations( const string16& distribution_data) { } +string16 BrowserDistribution::GetActiveSetupGuid() { + return kChromiumActiveSetupGuid; +} + string16 BrowserDistribution::GetAppGuid() { return L""; } diff --git a/chrome/installer/util/browser_distribution.h b/chrome/installer/util/browser_distribution.h index 9b01f7b..a5ec525 100644 --- a/chrome/installer/util/browser_distribution.h +++ b/chrome/installer/util/browser_distribution.h @@ -67,6 +67,9 @@ class BrowserDistribution { const FilePath& local_data_path, const string16& distribution_data); + // Returns the GUID to be used when registering for Active Setup. + virtual string16 GetActiveSetupGuid(); + virtual string16 GetAppGuid(); // Returns the unsuffixed application name of this program. diff --git a/chrome/installer/util/google_chrome_distribution.cc b/chrome/installer/util/google_chrome_distribution.cc index 3433b96..b37e611 100644 --- a/chrome/installer/util/google_chrome_distribution.cc +++ b/chrome/installer/util/google_chrome_distribution.cc @@ -407,6 +407,10 @@ void GoogleChromeDistribution::DoPostUninstallOperations( installer::WMIProcess::Launch(command, &pid); } +string16 GoogleChromeDistribution::GetActiveSetupGuid() { + return product_guid(); +} + string16 GoogleChromeDistribution::GetAppGuid() { return product_guid(); } diff --git a/chrome/installer/util/google_chrome_distribution.h b/chrome/installer/util/google_chrome_distribution.h index d207bd1..0a315bd 100644 --- a/chrome/installer/util/google_chrome_distribution.h +++ b/chrome/installer/util/google_chrome_distribution.h @@ -35,6 +35,8 @@ class GoogleChromeDistribution : public BrowserDistribution { const FilePath& local_data_path, const string16& distribution_data) OVERRIDE; + virtual string16 GetActiveSetupGuid() OVERRIDE; + virtual string16 GetAppGuid() OVERRIDE; virtual string16 GetBaseAppName() OVERRIDE; diff --git a/chrome/installer/util/google_chrome_distribution_dummy.cc b/chrome/installer/util/google_chrome_distribution_dummy.cc index ce7d657..cf8d619 100644 --- a/chrome/installer/util/google_chrome_distribution_dummy.cc +++ b/chrome/installer/util/google_chrome_distribution_dummy.cc @@ -26,6 +26,11 @@ void GoogleChromeDistribution::DoPostUninstallOperations( const string16& distribution_data) { } +string16 GoogleChromeDistribution::GetActiveSetupGuid() { + NOTREACHED(); + return string16(); +} + string16 GoogleChromeDistribution::GetAppGuid() { NOTREACHED(); return string16(); diff --git a/chrome/installer/util/install_util.cc b/chrome/installer/util/install_util.cc index fb751e53..c9a6230 100644 --- a/chrome/installer/util/install_util.cc +++ b/chrome/installer/util/install_util.cc @@ -124,7 +124,7 @@ HWND CreateUACForegroundWindow() { string16 InstallUtil::GetActiveSetupPath(BrowserDistribution* dist) { static const wchar_t kInstalledComponentsPath[] = L"Software\\Microsoft\\Active Setup\\Installed Components\\"; - return kInstalledComponentsPath + dist->GetAppGuid(); + return kInstalledComponentsPath + dist->GetActiveSetupGuid(); } void InstallUtil::TriggerActiveSetupCommand() { |