diff options
Diffstat (limited to 'winsup/cygwin/wincap.cc')
-rw-r--r-- | winsup/cygwin/wincap.cc | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc index 4d20ecce3..646e3dc80 100644 --- a/winsup/cygwin/wincap.cc +++ b/winsup/cygwin/wincap.cc @@ -50,6 +50,7 @@ wincaps wincap_unknown __attribute__((section (".cygwin_dll_common"), shared)) = supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_nt4 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -82,6 +83,7 @@ wincaps wincap_nt4 __attribute__((section (".cygwin_dll_common"), shared)) = { supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_nt4sp4 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -114,6 +116,7 @@ wincaps wincap_nt4sp4 __attribute__((section (".cygwin_dll_common"), shared)) = supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_2000 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -146,6 +149,7 @@ wincaps wincap_2000 __attribute__((section (".cygwin_dll_common"), shared)) = { supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_2000sp4 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -178,6 +182,7 @@ wincaps wincap_2000sp4 __attribute__((section (".cygwin_dll_common"), shared)) = supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_xp __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -210,6 +215,7 @@ wincaps wincap_xp __attribute__((section (".cygwin_dll_common"), shared)) = { supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_xpsp1 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -242,6 +248,7 @@ wincaps wincap_xpsp1 __attribute__((section (".cygwin_dll_common"), shared)) = { supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_xpsp2 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -274,6 +281,7 @@ wincaps wincap_xpsp2 __attribute__((section (".cygwin_dll_common"), shared)) = { supports_all_posix_ai_flags:false, has_restricted_stack_args:false, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_2003 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -306,6 +314,7 @@ wincaps wincap_2003 __attribute__((section (".cygwin_dll_common"), shared)) = { supports_all_posix_ai_flags:false, has_restricted_stack_args:true, has_transactions:false, + ts_has_dep_problem:false, }; wincaps wincap_vista __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -338,6 +347,7 @@ wincaps wincap_vista __attribute__((section (".cygwin_dll_common"), shared)) = { supports_all_posix_ai_flags:true, has_restricted_stack_args:false, has_transactions:true, + ts_has_dep_problem:false, }; wincapc wincap __attribute__((section (".cygwin_dll_common"), shared)); @@ -419,8 +429,14 @@ wincapc::init () } if (has_osversioninfoex && version.wProductType != VER_NT_WORKSTATION) - ((wincaps *)caps)->is_server = true; - + { + ((wincaps *)caps)->is_server = true; + if (version.dwMajorVersion >= 6 + && (version.wSuiteMask + & (VER_SUITE_TERMINAL | VER_SUITE_SINGLEUSERTS)) + == VER_SUITE_TERMINAL) + ((wincaps *)caps)->ts_has_dep_problem = true; + } if (NT_SUCCESS (NtQueryInformationProcess (GetCurrentProcess (), ProcessWow64Information, &wow64, sizeof wow64, NULL)) |