summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/shared.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2005-04-30 17:07:05 +0000
committerChristopher Faylor <me@cgf.cx>2005-04-30 17:07:05 +0000
commitf0b14f146e02256b3f99d997194e9cdbba85acb5 (patch)
tree11a2311f660fb61b54476ece73202233bfd7c3c7 /winsup/cygwin/shared.cc
parent06e0dc9a4672966742410aae4967f3c7bfa5188c (diff)
downloadcygnal-f0b14f146e02256b3f99d997194e9cdbba85acb5.tar.gz
cygnal-f0b14f146e02256b3f99d997194e9cdbba85acb5.tar.bz2
cygnal-f0b14f146e02256b3f99d997194e9cdbba85acb5.zip
* environ.cc (spenv::force_into_environment): Rename from add_always.
(spenv::add_if_exists): Rename from force. (build_env): Accommodate name changes. Make sure that stuff that is always supposed to be in the environment is actually added to the environment. * shared.cc (open_shared): Restore VirtualFree eliminated by 2005-04-28 change.
Diffstat (limited to 'winsup/cygwin/shared.cc')
-rw-r--r--winsup/cygwin/shared.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/winsup/cygwin/shared.cc b/winsup/cygwin/shared.cc
index f0daccb85..dcb26a9af 100644
--- a/winsup/cygwin/shared.cc
+++ b/winsup/cygwin/shared.cc
@@ -84,7 +84,10 @@ open_shared (const char *name, int n, HANDLE& shared_h, DWORD size,
|| !wincap.needs_memory_protection () && offsets[0])
addr = NULL;
else
- addr = offsets[m];
+ {
+ addr = offsets[m];
+ (void) VirtualFree (addr, 0, MEM_RELEASE);
+ }
if (shared_h)
m = SH_JUSTOPEN;