From 3623cfa3997fd6461b9c2a9883b8e053ded7a63b Mon Sep 17 00:00:00 2001 From: Dave Korn Date: Tue, 11 Dec 2007 15:16:19 +0000 Subject: [PATCH] * cygheap.cc (_csbrk): Don't request zero bytes from VirtualAlloc, as windows treats that as an invalid parameter and returns an error. --- winsup/cygwin/ChangeLog | 5 +++++ winsup/cygwin/cygheap.cc | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) 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 + + * 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 * 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)) -- 2.43.5