Index: sandbox/win/src/registry_dispatcher.cc |
diff --git a/sandbox/win/src/registry_dispatcher.cc b/sandbox/win/src/registry_dispatcher.cc |
index 2a92497c7c9406ee94e0544c66be2aa3eb83457a..f98d1d33044b2fe0eb404519060ef98a16961617 100644 |
--- a/sandbox/win/src/registry_dispatcher.cc |
+++ b/sandbox/win/src/registry_dispatcher.cc |
@@ -63,7 +63,10 @@ bool RegistryDispatcher::SetupService(InterceptionManager* manager, |
if (IPC_NTOPENKEY_TAG == service) { |
bool result = INTERCEPT_NT(manager, NtOpenKey, OPEN_KEY_ID, 16); |
- if (base::win::GetVersion() >= base::win::VERSION_WIN7) |
+ if (base::win::GetVersion() >= base::win::VERSION_WIN7 || |
+ (base::win::GetVersion() == base::win::VERSION_VISTA && |
+ base::win::OSInfo::GetInstance()->version_type() == |
+ base::win::SUITE_SERVER)) |
result &= INTERCEPT_NT(manager, NtOpenKeyEx, OPEN_KEY_EX_ID, 20); |
return result; |
} |