summaryrefslogtreecommitdiffstats
path: root/chrome/installer/util/browser_distribution.cc
diff options
context:
space:
mode:
authorrobertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-04 22:18:57 +0000
committerrobertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-04 22:18:57 +0000
commit74d1eecc72f97cb759ea252d8838f5ee46670938 (patch)
tree0de991eb6f83c7390d4a72c6b467a2ed9dd3582d /chrome/installer/util/browser_distribution.cc
parentef9fc5845fa7e3d2e9b601bfae60805b8f1c3b89 (diff)
downloadchromium_src-74d1eecc72f97cb759ea252d8838f5ee46670938.zip
chromium_src-74d1eecc72f97cb759ea252d8838f5ee46670938.tar.gz
chromium_src-74d1eecc72f97cb759ea252d8838f5ee46670938.tar.bz2
Continue to remove CHROME_FRAME_BUILD define from code that goes into chrome.dll. This reworks the browser distribution code to use the ChromeFrameBrowserDistribution iff --chrome-frame is present on the command line.
Also, * At startup, chrome.exe now uses the BrowserDistribution code to determine where the Chromium version key resides (instead of hard coding it). * The installer now propagates the presence of --verbose-logging to uninstalls. * The chrome_launcher now allows the --chrome-frame switch through to chrome. * The installer now accepts a --chrome-frame switch. * Remove almost all occurences of the CHROME_FRAME_BUILD define from the installer. BUG=26012, 26603 TEST=Chrome Frame still builds and runs correctly. Chrome Frame builds built without 'branding'='Chrome' now install correctly. Review URL: http://codereview.chromium.org/345021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31015 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/installer/util/browser_distribution.cc')
-rw-r--r--chrome/installer/util/browser_distribution.cc24
1 files changed, 18 insertions, 6 deletions
diff --git a/chrome/installer/util/browser_distribution.cc b/chrome/installer/util/browser_distribution.cc
index 0d1772f..4298a0c 100644
--- a/chrome/installer/util/browser_distribution.cc
+++ b/chrome/installer/util/browser_distribution.cc
@@ -9,20 +9,32 @@
#include "chrome/installer/util/browser_distribution.h"
+#include "base/command_line.h"
#include "base/registry.h"
-#include "chrome/installer/util/google_chrome_distribution.h"
+#include "chrome/common/chrome_switches.h"
+#include "chrome/common/env_vars.h"
#include "chrome/installer/util/chrome_frame_distribution.h"
+#include "chrome/installer/util/google_chrome_distribution.h"
+#include "chrome/installer/util/install_util.h"
BrowserDistribution* BrowserDistribution::GetDistribution() {
+ return GetDistribution(InstallUtil::IsChromeFrameProcess());
+}
+
+BrowserDistribution* BrowserDistribution::GetDistribution(bool chrome_frame) {
static BrowserDistribution* dist = NULL;
if (dist == NULL) {
-#if defined(CHROME_FRAME_BUILD)
- dist = new ChromeFrameDistribution();
-#elif defined(GOOGLE_CHROME_BUILD)
- dist = new GoogleChromeDistribution();
+ if (chrome_frame) {
+ // TODO(robertshield): Make one of these for Google Chrome vs
+ // non Google Chrome builds?
+ dist = new ChromeFrameDistribution();
+ } else {
+#if defined(GOOGLE_CHROME_BUILD)
+ dist = new GoogleChromeDistribution();
#else
- dist = new BrowserDistribution();
+ dist = new BrowserDistribution();
#endif
+ }
}
return dist;
}