|
More installer refactoring in the interest of fixing some bugs and cleaning things up:
- Introduced ProductOperations: an interface implemented for each product that takes care of product-specific functions. Each Product owns an instance and delegates certain operations to it.
- Removed the use of MasterPreferences by BrowserDistribution so that the former isn't needed outside of the installer.
- Replaced PackageProperties with a new BrowserDistribution type (CHROME_BINARIES)
- Plumbed the concept of InstallerState more thoroughly through installer
- Removed ProductPackageMapping and Package
- Moved more registry read ops into ProductState
- Validation of products to be installed is now done in CheckPreInstallConditions
- Ignore --chrome-frame --ready-mode if chrome is also being installed/updated and a SxS GCF is found (chrome is updated).
- Migrates existing single-install Chrome to multi-install where appropriate.
- Fixes update to Chrome's uninstallation arguments when Chrome Frame is uninstalled.
- Removed dead code from install.cc.
- Added code to update products' "ap" values when ready-mode is accepted.
- Skip post-install things such as launching the browser when Chrome was implicitly added to the install/upgrade process by virtue of being part of a multi-install.
BUG= 61609
TEST=run the installer, see it work. existing tests in installer_util_unittests have been updated; new tests are included for ProductState, ChannelInfo, etc.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=72497
Total comments: 49
Total comments: 58
Total comments: 23
Total comments: 11
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+3342 lines, -2703 lines) |
Patch |
 |
M |
chrome/chrome_installer.gypi
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+6 lines, -3 lines |
0 comments
|
Download
|
 |
M |
chrome/chrome_installer_util.gypi
|
View
|
1
2
3
4
5
6
7
|
5 chunks |
+11 lines, -4 lines |
0 comments
|
Download
|
 |
M |
chrome/common/chrome_paths_win.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+1 line, -3 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/chrome_frame_ready_mode.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+9 lines, -4 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/chrome_frame_ready_mode.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+156 lines, -130 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/install.h
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+7 lines, -8 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/install.cc
|
View
|
1
2
3
4
5
6
7
|
17 chunks |
+53 lines, -195 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/install_worker.h
|
View
|
1
2
3
4
5
6
7
|
4 chunks |
+22 lines, -14 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/install_worker.cc
|
View
|
1
2
3
4
5
6
7
|
25 chunks |
+181 lines, -229 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/install_worker_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
7 chunks |
+18 lines, -36 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/setup_main.cc
|
View
|
1
2
3
4
5
6
7
|
35 chunks |
+288 lines, -178 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/setup/setup_unittests.rc
|
View
|
1
|
1 chunk |
+65 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/setup/setup_unittests_resource.h
|
View
|
1
|
1 chunk |
+18 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/setup_util.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
chrome/installer/setup/uninstall.cc
|
View
|
1
2
3
4
5
6
7
|
23 chunks |
+116 lines, -93 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/browser_distribution.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+8 lines, -32 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/browser_distribution.cc
|
View
|
1
2
3
4
5
6
7
|
5 chunks |
+41 lines, -51 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/browser_distribution_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+4 lines, -18 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/channel_info.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/channel_info.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+12 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/channel_info_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+36 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chrome_browser_operations.h
|
View
|
1
2
|
1 chunk |
+54 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chrome_browser_operations.cc
|
View
|
1
2
|
1 chunk |
+82 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chrome_browser_sxs_operations.h
|
View
|
1
2
|
1 chunk |
+33 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chrome_browser_sxs_operations.cc
|
View
|
1
2
|
1 chunk |
+22 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/chrome_frame_distribution.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+1 line, -19 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/chrome_frame_distribution.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+2 lines, -92 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chrome_frame_operations.h
|
View
|
1
2
|
1 chunk |
+58 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chrome_frame_operations.cc
|
View
|
1
2
3
4
5
|
1 chunk |
+148 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chromium_binaries_distribution.h
|
View
|
|
1 chunk |
+64 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/chromium_binaries_distribution.cc
|
View
|
|
1 chunk |
+105 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/google_chrome_binaries_distribution.h
|
View
|
|
1 chunk |
+38 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/google_chrome_binaries_distribution.cc
|
View
|
|
1 chunk |
+56 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_chrome_distribution.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+3 lines, -5 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_chrome_distribution.cc
|
View
|
1
2
3
4
5
6
7
|
4 chunks |
+6 lines, -12 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_chrome_distribution_dummy.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+4 lines, -11 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_chrome_distribution_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+1 line, -5 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_chrome_sxs_distribution.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+1 line, -3 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_chrome_sxs_distribution.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+3 lines, -10 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_update_settings.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_update_settings.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+24 lines, -14 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/google_update_settings_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+24 lines, -20 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/helper.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+4 lines, -23 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/helper.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+17 lines, -90 lines |
0 comments
|
Download
|
 |
D |
chrome/installer/util/helper_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -204 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/install_util.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+8 lines, -4 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/install_util.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+24 lines, -2 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/install_util_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
4 chunks |
+36 lines, -11 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/installation_state.h
|
View
|
1
2
3
4
5
6
7
|
4 chunks |
+52 lines, -25 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/installation_state.cc
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+86 lines, -54 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/installer_state.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+142 lines, -6 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/installer_state.cc
|
View
|
1
2
3
4
5
6
7
|
4 chunks |
+369 lines, -16 lines |
0 comments
|
Download
|
 |
A + |
chrome/installer/util/installer_state_unittest.cc
|
View
|
1
2
|
6 chunks |
+175 lines, -52 lines |
0 comments
|
Download
|
 |
D |
chrome/installer/util/package.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -90 lines |
0 comments
|
Download
|
 |
D |
chrome/installer/util/package.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -188 lines |
0 comments
|
Download
|
 |
D |
chrome/installer/util/package_properties.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -109 lines |
0 comments
|
Download
|
 |
D |
chrome/installer/util/package_properties.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -94 lines |
0 comments
|
Download
|
 |
D |
chrome/installer/util/package_properties_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -40 lines |
0 comments
|
Download
|
 |
D |
chrome/installer/util/package_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -190 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/product.h
|
View
|
1
2
3
4
5
6
7
|
5 chunks |
+45 lines, -77 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/product.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+44 lines, -145 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/product_operations.h
|
View
|
1
2
|
1 chunk |
+74 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/installer/util/product_state_unittest.cc
|
View
|
1
2
|
1 chunk |
+416 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/product_unittest.cc
|
View
|
1
2
3
4
5
6
7
|
5 chunks |
+42 lines, -87 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/util_constants.h
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+8 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/installer/util/util_constants.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome_frame/ready_mode/ready_mode.cc
|
View
|
1
2
3
4
5
6
7
|
3 chunks |
+9 lines, -4 lines |
0 comments
|
Download
|
Total messages: 22 (0 generated)
|