Chromium Code Reviews| Index: chrome/installer/mini_installer/mini_installer.cc |
| diff --git a/chrome/installer/mini_installer/mini_installer.cc b/chrome/installer/mini_installer/mini_installer.cc |
| index 25b0c80413049d6618a1e153e5cb0a0460fc4ced..c2ee715bf3e0b10c10db84f4149b5ab704fdc71e 100644 |
| --- a/chrome/installer/mini_installer/mini_installer.cc |
| +++ b/chrome/installer/mini_installer/mini_installer.cc |
| @@ -132,7 +132,8 @@ bool ReadValueFromRegistry(HKEY root_key, const wchar_t *sub_key, |
| size_t size) { |
| RegKey key; |
| - if (key.Open(root_key, sub_key, KEY_QUERY_VALUE) == ERROR_SUCCESS && |
| + if (key.Open(root_key, sub_key, |
| + KEY_QUERY_VALUE | KEY_WOW64_32KEY) == ERROR_SUCCESS && |
|
grt (UTC plus 2)
2014/05/27 16:42:08
this function is only used for a key in HKCU that
Will Harris
2014/05/27 19:25:10
Done.
|
| key.ReadValue(value_name, value, size) == ERROR_SUCCESS) { |
| return true; |
| } |
| @@ -156,7 +157,7 @@ bool OpenClientStateKey(HKEY root_key, const wchar_t* app_guid, REGSAM access, |
| // TODO(grt): Write a unit test for this that uses registry virtualization. |
| void SetInstallerFlags(const Configuration& configuration) { |
| RegKey key; |
| - const REGSAM key_access = KEY_QUERY_VALUE | KEY_SET_VALUE; |
| + const REGSAM key_access = KEY_QUERY_VALUE | KEY_SET_VALUE | KEY_WOW64_32KEY; |
| const HKEY root_key = |
| configuration.is_system_level() ? HKEY_LOCAL_MACHINE : HKEY_CURRENT_USER; |
| // This is ignored if multi-install is true. |
| @@ -229,7 +230,8 @@ bool GetSetupExePathForGuidFromRegistry(bool system_level, |
| size_t size) { |
| const HKEY root_key = system_level ? HKEY_LOCAL_MACHINE : HKEY_CURRENT_USER; |
| RegKey key; |
| - return OpenClientStateKey(root_key, app_guid, KEY_QUERY_VALUE, &key) && |
| + return OpenClientStateKey(root_key, app_guid, |
| + KEY_QUERY_VALUE | KEY_WOW64_32KEY, &key) && |
| (key.ReadValue(kUninstallRegistryValueName, path, size) == ERROR_SUCCESS); |
| } |