diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2007-06-27 17:08:19 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2007-06-27 17:08:19 +0000 |
commit | 41391cb2bba626aeb1e6ab7f65eb87eec6f93f1a (patch) | |
tree | bd05f8d5212322b68cec9965c179af4287cb2ada | |
parent | 048e00e01d23d1f8e59eb990ddc740b779f8f1f5 (diff) | |
download | cygnal-41391cb2bba626aeb1e6ab7f65eb87eec6f93f1a.tar.gz cygnal-41391cb2bba626aeb1e6ab7f65eb87eec6f93f1a.tar.bz2 cygnal-41391cb2bba626aeb1e6ab7f65eb87eec6f93f1a.zip |
* shared_info.h (SHARED_INFO_CB): Accommodate change to shared_info.
(CURR_SHARED_MAGIC): Ditto.
(class shared_info): Add heap_slop_inited member.
* shared.cc (shared_info::heap_slop_size): Use heap_slop_inited to
track initializing heap_slop since 0 is a valid value for heap_slop.
Drop useless < 0 consideration.
-rw-r--r-- | winsup/cygwin/ChangeLog | 9 | ||||
-rw-r--r-- | winsup/cygwin/shared.cc | 9 | ||||
-rw-r--r-- | winsup/cygwin/shared_info.h | 5 |
3 files changed, 15 insertions, 8 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 67b007087..c10960341 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,12 @@ +2007-06-27 Corinna Vinschen <corinna@vinschen.de> + + * shared_info.h (SHARED_INFO_CB): Accommodate change to shared_info. + (CURR_SHARED_MAGIC): Ditto. + (class shared_info): Add heap_slop_inited member. + * shared.cc (shared_info::heap_slop_size): Use heap_slop_inited to + track initializing heap_slop since 0 is a valid value for heap_slop. + Drop useless < 0 consideration. + 2007-06-27 Eric Blake <ebb9@byu.net> * assert.cc (__assert_func): New function, to match newlib header diff --git a/winsup/cygwin/shared.cc b/winsup/cygwin/shared.cc index 553caa2ba..fd9b87e5c 100644 --- a/winsup/cygwin/shared.cc +++ b/winsup/cygwin/shared.cc @@ -262,7 +262,7 @@ memory_init () unsigned shared_info::heap_slop_size () { - if (!heap_slop) + if (!heap_slop_inited) { /* Fetch from registry, first user then local machine. */ for (int i = 0; i < 2; i++) @@ -273,11 +273,8 @@ shared_info::heap_slop_size () break; heap_slop = wincap.heapslop (); } - - if (heap_slop < 0) - heap_slop = 0; - else - heap_slop <<= 20; + heap_slop <<= 20; + heap_slop_inited = true; } return heap_slop; diff --git a/winsup/cygwin/shared_info.h b/winsup/cygwin/shared_info.h index d9b37d72a..c99917306 100644 --- a/winsup/cygwin/shared_info.h +++ b/winsup/cygwin/shared_info.h @@ -143,9 +143,9 @@ public: cygwin_version.api_minor) #define SHARED_VERSION_MAGIC CYGWIN_VERSION_MAGIC (SHARED_MAGIC, SHARED_VERSION) -#define SHARED_INFO_CB 19988 +#define SHARED_INFO_CB 19992 -#define CURR_SHARED_MAGIC 0x87c42d1eU +#define CURR_SHARED_MAGIC 0xb7048a88U /* NOTE: Do not make gratuitous changes to the names or organization of the below class. The layout is checksummed to determine compatibility between @@ -156,6 +156,7 @@ class shared_info DWORD cb; public: unsigned heap_chunk; + bool heap_slop_inited; unsigned heap_slop; DWORD sys_mount_table_counter; |