diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2003-12-01 15:03:43 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2003-12-01 15:03:43 +0000 |
commit | 6c2b7846124572ffed3ce4fea074cc89e732651c (patch) | |
tree | 864e724e3480a3f4662f895e5874de95d9beed9c /winsup/cygwin/cygheap.cc | |
parent | 4febe95f89e491c20503330fbad530d53d7ea4fa (diff) | |
download | cygnal-6c2b7846124572ffed3ce4fea074cc89e732651c.tar.gz cygnal-6c2b7846124572ffed3ce4fea074cc89e732651c.tar.bz2 cygnal-6c2b7846124572ffed3ce4fea074cc89e732651c.zip |
* cygheap.cc (cygheap_init): Set cygheap->shared_prefix.
* cygheap.h (struct init_cygheap): Add shared_prefix.
* shared.cc (shared_name): Use cygheap->shared_prefix.
Diffstat (limited to 'winsup/cygwin/cygheap.cc')
-rw-r--r-- | winsup/cygwin/cygheap.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/winsup/cygwin/cygheap.cc b/winsup/cygwin/cygheap.cc index ede408695..6859e4335 100644 --- a/winsup/cygwin/cygheap.cc +++ b/winsup/cygwin/cygheap.cc @@ -206,6 +206,12 @@ cygheap_init () cygheap->fdtab.init (); if (!cygheap->sigs) sigalloc (); + if (!cygheap->shared_prefix) + cygheap->shared_prefix = cstrdup ( + wincap.has_terminal_services () + && (set_process_privilege (SE_CREATE_GLOBAL_NAME, true) >= 0 + || GetLastError () == ERROR_NO_SUCH_PRIVILEGE) + ? "Global\\" : ""); } /* Copyright (C) 1997, 2000 DJ Delorie */ |