Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2387)

Unified Diff: chrome/installer/util/shell_util.cc

Issue 282363003: Add WOW64 support to the installer registry work items (Closed) Base URL: https://chromium.googlesource.com/chromium/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/installer/util/shell_util.cc
diff --git a/chrome/installer/util/shell_util.cc b/chrome/installer/util/shell_util.cc
index 9e705cce2f70c808caed8aa1ab39e7c08c42f621..149061fea51ac3c6b523e2f19816558fdaf8554c 100644
--- a/chrome/installer/util/shell_util.cc
+++ b/chrome/installer/util/shell_util.cc
@@ -48,6 +48,7 @@
#include "chrome/installer/util/master_preferences.h"
#include "chrome/installer/util/master_preferences_constants.h"
#include "chrome/installer/util/util_constants.h"
+#include "chrome/installer/util/work_item.h"
#include "installer_util_strings.h" // NOLINT
@@ -531,11 +532,13 @@ class RegistryEntry {
// Generate work_item tasks required to create current registry entry and
// add them to the given work item list.
void AddToWorkItemList(HKEY root, WorkItemList *items) const {
- items->AddCreateRegKeyWorkItem(root, key_path_);
+ items->AddCreateRegKeyWorkItem(root, key_path_, reg_wow64_option_);
if (is_string_) {
- items->AddSetRegValueWorkItem(root, key_path_, name_, value_, true);
+ items->AddSetRegValueWorkItem(root, key_path_, name_,
+ value_, true, reg_wow64_option_);
} else {
- items->AddSetRegValueWorkItem(root, key_path_, name_, int_value_, true);
+ items->AddSetRegValueWorkItem(root, key_path_, name_,
+ int_value_, true, reg_wow64_option_);
}
}
@@ -574,8 +577,10 @@ class RegistryEntry {
};
// Create a object that represent default value of a key
- RegistryEntry(const base::string16& key_path, const base::string16& value)
+ RegistryEntry(const base::string16& key_path,
+ const base::string16& value)
: key_path_(key_path), name_(),
+ reg_wow64_option_(WorkItem::WOW64_DEFAULT),
is_string_(true), value_(value), int_value_(0) {
}
@@ -583,6 +588,7 @@ class RegistryEntry {
RegistryEntry(const base::string16& key_path, const base::string16& name,
const base::string16& value)
: key_path_(key_path), name_(name),
+ reg_wow64_option_(WorkItem::WOW64_DEFAULT),
is_string_(true), value_(value), int_value_(0) {
}
@@ -590,11 +596,14 @@ class RegistryEntry {
RegistryEntry(const base::string16& key_path, const base::string16& name,
DWORD value)
: key_path_(key_path), name_(name),
+ reg_wow64_option_(WorkItem::WOW64_DEFAULT),
is_string_(false), value_(), int_value_(value) {
}
base::string16 key_path_; // key path for the registry entry
base::string16 name_; // name of the registry entry
+ // Which view of the registry to use.
+ WorkItem::RegWow64ViewOption reg_wow64_option_;
bool is_string_; // true if current registry entry is of type REG_SZ
base::string16 value_; // string value (useful if is_string_ = true)
DWORD int_value_; // integer value (useful if is_string_ = false)

Powered by Google App Engine
This is Rietveld 408576698