Index: chrome/installer/setup/install_worker.cc |
=================================================================== |
--- chrome/installer/setup/install_worker.cc (revision 273136) |
+++ chrome/installer/setup/install_worker.cc (working copy) |
@@ -216,7 +216,7 @@ |
if (installer_state.operation() == InstallerState::UNINSTALL) { |
work_item_list->AddDeleteRegKeyWorkItem(installer_state.root_key(), |
full_cmd_key, |
- KEY_WOW64_32KEY) |
+ WorkItem::kWow64Default) |
->set_log_message("removing " + base::UTF16ToASCII(command_key) + |
" command"); |
} else { |
@@ -442,7 +442,7 @@ |
base::string16 uninstall_reg(product.distribution()->GetUninstallRegPath()); |
WorkItem* delete_reg_key = work_item_list->AddDeleteRegKeyWorkItem( |
- reg_root, uninstall_reg, KEY_WOW64_32KEY); |
+ reg_root, uninstall_reg, WorkItem::kWow64Default); |
delete_reg_key->set_ignore_failure(true); |
// Then attempt to delete the old installation's start menu shortcut. |
@@ -611,18 +611,17 @@ |
WorkItemList* list) { |
VLOG(1) << "Adding unregistration items for DelegateExecute verb handler in " |
<< root; |
- // Delete both 64 and 32 keys to handle 32->64 or 64->32 migration. |
- list->AddDeleteRegKeyWorkItem(root, delegate_execute_path, KEY_WOW64_32KEY); |
+ list->AddDeleteRegKeyWorkItem(root, |
+ delegate_execute_path, |
+ WorkItem::kWow64Default); |
- list->AddDeleteRegKeyWorkItem(root, delegate_execute_path, KEY_WOW64_64KEY); |
- |
// In the past, the ICommandExecuteImpl interface and a TypeLib were both |
// registered. Remove these since this operation may be updating a machine |
// that had the old registrations. |
list->AddDeleteRegKeyWorkItem(root, |
L"Software\\Classes\\Interface\\" |
L"{0BA0D4E9-2259-4963-B9AE-A839F7CB7544}", |
- KEY_WOW64_32KEY); |
+ WorkItem::kWow64Default); |
list->AddDeleteRegKeyWorkItem(root, |
L"Software\\Classes\\TypeLib\\" |
#if defined(GOOGLE_CHROME_BUILD) |
@@ -630,7 +629,7 @@ |
#else |
L"{7779FB70-B399-454A-AA1A-BAA850032B10}", |
#endif |
- KEY_WOW64_32KEY); |
+ WorkItem::kWow64Default); |
} |
// Google Chrome Canary, between 20.0.1101.0 (crrev.com/132190) and 20.0.1106.0 |
@@ -700,17 +699,17 @@ |
base::string16 update_state_key(browser_dist->GetStateKey()); |
install_list->AddCreateRegKeyWorkItem( |
- reg_root, update_state_key, KEY_WOW64_32KEY); |
+ reg_root, update_state_key, WorkItem::kWow64Default); |
install_list->AddSetRegValueWorkItem(reg_root, |
update_state_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
installer::kUninstallStringField, |
installer_path.value(), |
true); |
install_list->AddSetRegValueWorkItem( |
reg_root, |
update_state_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
installer::kUninstallArgumentsField, |
uninstall_arguments.GetCommandLineString(), |
true); |
@@ -724,23 +723,23 @@ |
base::string16 uninstall_reg = browser_dist->GetUninstallRegPath(); |
install_list->AddCreateRegKeyWorkItem( |
- reg_root, uninstall_reg, KEY_WOW64_32KEY); |
+ reg_root, uninstall_reg, WorkItem::kWow64Default); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
installer::kUninstallDisplayNameField, |
browser_dist->GetDisplayName(), |
true); |
install_list->AddSetRegValueWorkItem( |
reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
installer::kUninstallStringField, |
quoted_uninstall_cmd.GetCommandLineString(), |
true); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"InstallLocation", |
install_path.value(), |
true); |
@@ -751,46 +750,44 @@ |
dist->GetIconIndex(BrowserDistribution::SHORTCUT_CHROME)); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"DisplayIcon", |
chrome_icon, |
true); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"NoModify", |
static_cast<DWORD>(1), |
true); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"NoRepair", |
static_cast<DWORD>(1), |
true); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"Publisher", |
browser_dist->GetPublisherName(), |
true); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"Version", |
ASCIIToWide(new_version.GetString()), |
true); |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"DisplayVersion", |
ASCIIToWide(new_version.GetString()), |
true); |
- // TODO(wfh): Ensure that this value is preserved in the 64-bit hive when |
- // 64-bit installs place the uninstall information into the 64-bit registry. |
install_list->AddSetRegValueWorkItem(reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"InstallDate", |
InstallUtil::GetCurrentDate(), |
false); |
@@ -801,14 +798,14 @@ |
install_list->AddSetRegValueWorkItem( |
reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"VersionMajor", |
static_cast<DWORD>(version_components[2]), |
true); |
install_list->AddSetRegValueWorkItem( |
reg_root, |
uninstall_reg, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
L"VersionMinor", |
static_cast<DWORD>(version_components[3]), |
true); |
@@ -826,18 +823,18 @@ |
// Create Version key for each distribution (if not already present) and set |
// the new product version as the last step. |
base::string16 version_key(dist->GetVersionKey()); |
- list->AddCreateRegKeyWorkItem(root, version_key, KEY_WOW64_32KEY); |
+ list->AddCreateRegKeyWorkItem(root, version_key, WorkItem::kWow64Default); |
base::string16 product_name(dist->GetDisplayName()); |
list->AddSetRegValueWorkItem(root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegNameField, |
product_name, |
true); // overwrite name also |
list->AddSetRegValueWorkItem(root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegOopcrashesField, |
static_cast<DWORD>(1), |
false); // set during first install |
@@ -850,14 +847,14 @@ |
language.resize(2); |
list->AddSetRegValueWorkItem(root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegLangField, |
language, |
false); // do not overwrite language |
} |
list->AddSetRegValueWorkItem(root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegVersionField, |
ASCIIToWide(new_version.GetString()), |
true); // overwrite version |
@@ -900,11 +897,11 @@ |
<< BrowserDistribution::GetSpecificDistribution(source_type)-> |
GetDisplayName(); |
install_list->AddCreateRegKeyWorkItem( |
- root_key, multi_key, KEY_WOW64_32KEY); |
+ root_key, multi_key, WorkItem::kWow64Default); |
// Always overwrite an old value. |
install_list->AddSetRegValueWorkItem(root_key, |
multi_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegOemInstallField, |
oem_install, |
true); |
@@ -913,7 +910,7 @@ |
install_list->AddDeleteRegValueWorkItem( |
root_key, |
multi_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegOemInstallField); |
} |
} |
@@ -962,10 +959,10 @@ |
<< BrowserDistribution::GetSpecificDistribution(product_type)-> |
GetDisplayName(); |
install_list->AddCreateRegKeyWorkItem( |
- root_key, multi_key, KEY_WOW64_32KEY); |
+ root_key, multi_key, WorkItem::kWow64Default); |
install_list->AddSetRegValueWorkItem(root_key, |
multi_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegEULAAceptedField, |
eula_accepted, |
true); |
@@ -974,7 +971,7 @@ |
install_list->AddDeleteRegValueWorkItem( |
root_key, |
multi_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegEULAAceptedField); |
} |
} |
@@ -1002,9 +999,8 @@ |
install_list->AddCreateRegKeyWorkItem( |
root_key, |
installer_state.multi_package_binaries_distribution() |
- ->GetStateMediumKey() |
- .c_str(), |
- KEY_WOW64_32KEY); |
+ ->GetStateMediumKey().c_str(), |
+ WorkItem::kWow64Default); |
} |
// Creating the ClientState key for binaries, if we're migrating to multi then |
@@ -1017,12 +1013,12 @@ |
const base::string16& brand(chrome_product_state->brand()); |
if (!brand.empty()) { |
install_list->AddCreateRegKeyWorkItem( |
- root_key, multi_key, KEY_WOW64_32KEY); |
+ root_key, multi_key, WorkItem::kWow64Default); |
// Write Chrome's brand code to the multi key. Never overwrite the value |
// if one is already present (although this shouldn't happen). |
install_list->AddSetRegValueWorkItem(root_key, |
multi_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegBrandField, |
brand, |
false); |
@@ -1065,12 +1061,13 @@ |
if (value_found) { |
base::string16 state_key( |
installer_state.multi_package_binaries_distribution()->GetStateKey()); |
- install_list->AddCreateRegKeyWorkItem(root_key, state_key, KEY_WOW64_32KEY); |
+ install_list->AddCreateRegKeyWorkItem( |
+ root_key, state_key, WorkItem::kWow64Default); |
// Overwrite any existing value so that overinstalls (where Omaha writes a |
// new value into a product's state key) pick up the correct value. |
install_list->AddSetRegValueWorkItem(root_key, |
state_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegUsageStatsField, |
usagestats, |
true); |
@@ -1084,20 +1081,20 @@ |
install_list->AddDeleteRegValueWorkItem( |
root_key, |
dist->GetStateMediumKey(), |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegUsageStatsField); |
// Previous versions of Chrome also wrote a value in HKCU even for |
// system-level installs, so clean that up. |
install_list->AddDeleteRegValueWorkItem( |
HKEY_CURRENT_USER, |
dist->GetStateKey(), |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegUsageStatsField); |
} |
install_list->AddDeleteRegValueWorkItem( |
root_key, |
dist->GetStateKey(), |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegUsageStatsField); |
} |
} |
@@ -1151,7 +1148,7 @@ |
in_use_update_work_items->AddSetRegValueWorkItem( |
root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegOldVersionField, |
ASCIIToWide(current_version->GetString()), |
true); |
@@ -1160,7 +1157,7 @@ |
in_use_update_work_items->AddSetRegValueWorkItem( |
root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegCriticalVersionField, |
ASCIIToWide(critical_version.GetString()), |
true); |
@@ -1168,7 +1165,7 @@ |
in_use_update_work_items->AddDeleteRegValueWorkItem( |
root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegCriticalVersionField); |
} |
@@ -1183,7 +1180,7 @@ |
in_use_update_work_items->AddSetRegValueWorkItem( |
root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegRenameCmdField, |
product_rename_cmd.GetCommandLineString(), |
true); |
@@ -1207,17 +1204,17 @@ |
regular_update_work_items->AddDeleteRegValueWorkItem( |
root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegOldVersionField); |
regular_update_work_items->AddDeleteRegValueWorkItem( |
root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegCriticalVersionField); |
regular_update_work_items->AddDeleteRegValueWorkItem( |
root, |
version_key, |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegRenameCmdField); |
} |
@@ -1382,7 +1379,7 @@ |
WorkItem* set_msi_work_item = |
work_item_list->AddSetRegValueWorkItem(installer_state.root_key(), |
dist->GetStateKey(), |
- KEY_WOW64_32KEY, |
+ WorkItem::kWow64Default, |
google_update::kRegMSIField, |
msi_value, |
true); |
@@ -1591,7 +1588,8 @@ |
GetRegCommandKey(product.distribution(), kCmdOnOsUpgrade)); |
if (installer_state.operation() == InstallerState::UNINSTALL) { |
- install_list->AddDeleteRegKeyWorkItem(root_key, cmd_key, KEY_WOW64_32KEY) |
+ install_list->AddDeleteRegKeyWorkItem( |
+ root_key, cmd_key, WorkItem::kWow64Default) |
->set_log_message("Removing OS upgrade command"); |
} else { |
// Register with Google Update to have setup.exe --on-os-upgrade called on |
@@ -1623,8 +1621,9 @@ |
base::string16 cmd_key( |
GetRegCommandKey(product.distribution(), kCmdQueryEULAAcceptance)); |
if (installer_state.operation() == InstallerState::UNINSTALL) { |
- work_item_list->AddDeleteRegKeyWorkItem(root_key, cmd_key, KEY_WOW64_32KEY) |
- ->set_log_message("Removing query EULA acceptance command"); |
+ work_item_list->AddDeleteRegKeyWorkItem( |
+ root_key, cmd_key, WorkItem::kWow64Default) |
+ ->set_log_message("Removing query EULA acceptance command"); |
} else { |
CommandLine cmd_line(installer_state |
.GetInstallerDirectory(new_version) |
@@ -1654,9 +1653,9 @@ |
// Do this even if multi-install Chrome isn't installed to ensure that it is |
// not left behind in any case. |
work_item_list->AddDeleteRegKeyWorkItem( |
- installer_state.root_key(), cmd_key, KEY_WOW64_32KEY) |
- ->set_log_message("removing " + base::UTF16ToASCII(kCmdQuickEnableCf) + |
- " command"); |
+ installer_state.root_key(), cmd_key, WorkItem::kWow64Default) |
+ ->set_log_message("removing " + |
+ base::UTF16ToASCII(kCmdQuickEnableCf) + " command"); |
} |
} // namespace installer |