summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Korn <dave.korn.cygwin@gmail.com>2007-12-11 15:16:19 +0000
committerDave Korn <dave.korn.cygwin@gmail.com>2007-12-11 15:16:19 +0000
commit3623cfa3997fd6461b9c2a9883b8e053ded7a63b (patch)
tree289f65739a845ef237c5888d6cbaf54a84b1941c
parent4b93ac1f7fc248622a13f2485c1dbc66080708b5 (diff)
downloadcygnal-3623cfa3997fd6461b9c2a9883b8e053ded7a63b.tar.gz
cygnal-3623cfa3997fd6461b9c2a9883b8e053ded7a63b.tar.bz2
cygnal-3623cfa3997fd6461b9c2a9883b8e053ded7a63b.zip
* cygheap.cc (_csbrk): Don't request zero bytes from VirtualAlloc,
as windows treats that as an invalid parameter and returns an error.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/cygheap.cc2
2 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index f97f3ffe1..e358f7003 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2007-12-11 Dave Korn <dave.korn@artimi.com>
+
+ * cygheap.cc (_csbrk): Don't request zero bytes from VirtualAlloc,
+ as windows treats that as an invalid parameter and returns an error.
+
2007-12-11 Corinna Vinschen <corinna@vinschen.de>
* localtime.cc (tzset): Call tzsetwall only if it hasn't been
diff --git a/winsup/cygwin/cygheap.cc b/winsup/cygwin/cygheap.cc
index b9f24eecc..23e193bc3 100644
--- a/winsup/cygwin/cygheap.cc
+++ b/winsup/cygwin/cygheap.cc
@@ -129,7 +129,7 @@ _csbrk (int sbs)
newbase = _cygheap_end;
DWORD adjsbs = allocsize ((char *) cygheap_max - newbase);
- if (!VirtualAlloc (newbase, adjsbs, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE))
+ if (adjsbs && !VirtualAlloc (newbase, adjsbs, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE))
{
MEMORY_BASIC_INFORMATION m;
if (!VirtualQuery (newbase, &m, sizeof m))