summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/wincap.cc
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/wincap.cc')
-rw-r--r--winsup/cygwin/wincap.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc
index eee302036..4ce3ca1ce 100644
--- a/winsup/cygwin/wincap.cc
+++ b/winsup/cygwin/wincap.cc
@@ -11,6 +11,7 @@ details. */
#include "winsup.h"
#include "security.h"
+#include "ntdll.h"
/* Minimal set of capabilities which is equivalent to NT4. */
static NO_COPY wincaps wincap_unknown = {
@@ -394,7 +395,10 @@ wincapc::init ()
if (has_osversioninfoex && version.wProductType != VER_NT_WORKSTATION)
((wincaps *)caps)->is_server = true;
- if (IsWow64Process (GetCurrentProcess (), &wow64) && !wow64)
+ if (NT_SUCCESS (NtQueryInformationProcess (GetCurrentProcess (),
+ ProcessWow64Information,
+ &wow64, sizeof wow64, NULL))
+ && !wow64)
{
((wincaps *)caps)->needs_count_in_si_lpres2 = false;
((wincaps *)caps)->has_restricted_stack_args = false;