[Cmake-commits] CMake branch, master, updated. v2.8.3-418-g4b05a21
KWSys Robot
kwrobot at kitware.com
Fri Jan 7 07:40:34 EST 2011
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, master has been updated
via 4b05a213028b09660d4651b46a1cc3f102c8ad97 (commit)
from fd4875b4c030e1ac4f2cb08164e581cecde5af1e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4b05a213028b09660d4651b46a1cc3f102c8ad97
commit 4b05a213028b09660d4651b46a1cc3f102c8ad97
Author: David Cole <david.cole at kitware.com>
AuthorDate: Fri Jan 7 07:31:56 2011 -0500
Commit: David Cole <david.cole at kitware.com>
CommitDate: Fri Jan 7 07:40:07 2011 -0500
Fix WOW64 registry mode on Windows 2000 (#10759)
CMake fails to find any registry paths on Windows 2000: according to regmon
it fails with an access denied error. I double checked all the access rights
and they are fine. After checking the access modes on MSDN I found that it
says KEY_WOW64_32KEY / KEY_WOW64_64KEY are not supported on Windows 2000.
CMake does not check if the current system supports Wow64 before applying
these flags.
This commit adds a check for IsWow64Process in kernel32.dll before adding
these flags.
Author: Axel Gembe <ago at bastart.eu.org>
Signed-off-by: Axel Gembe <ago at bastart.eu.org>
diff --git a/Source/kwsys/SystemTools.cxx b/Source/kwsys/SystemTools.cxx
index cef2de6..ab90db3 100644
--- a/Source/kwsys/SystemTools.cxx
+++ b/Source/kwsys/SystemTools.cxx
@@ -563,6 +563,14 @@ void SystemTools::ReplaceString(kwsys_stl::string& source,
static DWORD SystemToolsMakeRegistryMode(DWORD mode,
SystemTools::KeyWOW64 view)
{
+ // only add the modes when on a system that supports Wow64.
+ static void *wow64p = GetProcAddress(GetModuleHandle("kernel32"),
+ "IsWow64Process");
+ if(wow64p == NULL)
+ {
+ return mode;
+ }
+
if(view == SystemTools::KeyWOW64_32)
{
return mode | KWSYS_ST_KEY_WOW64_32KEY;
-----------------------------------------------------------------------
Summary of changes:
Source/kwsys/SystemTools.cxx | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list