diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2008-04-27 16:12:00 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2008-04-27 16:12:00 +0000 |
commit | 533ce3fb55349f6d9fcfd000be47f2dd52446de8 (patch) | |
tree | 38c6abea2b3b8a7a3967c24d9749c397443064e9 | |
parent | adfa3c85d06532a7d0e6c5538f8ad45a86ec5ade (diff) | |
download | cygnal-533ce3fb55349f6d9fcfd000be47f2dd52446de8.tar.gz cygnal-533ce3fb55349f6d9fcfd000be47f2dd52446de8.tar.bz2 cygnal-533ce3fb55349f6d9fcfd000be47f2dd52446de8.zip |
* wincap.h (wincapc::wow64): Change type to BOOL.
* wincap.cc: Remove explicit use of this pointer in wincapc methods.
(wincapc::init): Fix bug in IsWow64Process handling.
-rw-r--r-- | winsup/cygwin/ChangeLog | 6 | ||||
-rw-r--r-- | winsup/cygwin/wincap.cc | 13 | ||||
-rw-r--r-- | winsup/cygwin/wincap.h | 2 |
3 files changed, 12 insertions, 9 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 7cdd1f882..89a8b8ed4 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,9 @@ +2008-04-27 Corinna Vinschen <corinna@vinschen.de> + + * wincap.h (wincapc::wow64): Change type to BOOL. + * wincap.cc: Remove explicit use of this pointer in wincapc methods. + (wincapc::init): Fix bug in IsWow64Process handling. + 2008-04-26 Corinna Vinschen <corinna@vinschen.de> * dcrt0.cc (dll_crt0_0): Set SEM_NOGPFAULTERRORBOX error mode, too, diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc index 18e2ddd82..eee302036 100644 --- a/winsup/cygwin/wincap.cc +++ b/winsup/cygwin/wincap.cc @@ -392,15 +392,12 @@ wincapc::init () } if (has_osversioninfoex && version.wProductType != VER_NT_WORKSTATION) - ((wincaps *)this->caps)->is_server = true; + ((wincaps *)caps)->is_server = true; - BOOL is_wow64_proc = FALSE; - if (IsWow64Process (GetCurrentProcess (), &is_wow64_proc)) - wow64 = is_wow64_proc; - else + if (IsWow64Process (GetCurrentProcess (), &wow64) && !wow64) { - ((wincaps *)this->caps)->needs_count_in_si_lpres2 = false; - ((wincaps *)this->caps)->has_restricted_stack_args = false; + ((wincaps *)caps)->needs_count_in_si_lpres2 = false; + ((wincaps *)caps)->has_restricted_stack_args = false; } __small_sprintf (osnam, "NT-%d.%d", version.dwMajorVersion, @@ -410,5 +407,5 @@ wincapc::init () void wincapc::set_chunksize (DWORD nchunksize) { - ((wincaps *)this->caps)->chunksize = nchunksize; + ((wincaps *)caps)->chunksize = nchunksize; } diff --git a/winsup/cygwin/wincap.h b/winsup/cygwin/wincap.h index c8b08cc46..89eba6150 100644 --- a/winsup/cygwin/wincap.h +++ b/winsup/cygwin/wincap.h @@ -46,7 +46,7 @@ class wincapc { OSVERSIONINFOEX version; char osnam[40]; - bool wow64; + BOOL wow64; void *caps; public: |