diff -pru cygwin-1.5.23-2/winsup/cygwin/cygheap.cc cygwin-1.5.23-2.fixed/winsup/cygwin/cygheap.cc
--- cygwin-1.5.23-2/winsup/cygwin/cygheap.cc	2006-06-03 07:35:10.000000000 +0100
+++ cygwin-1.5.23-2.fixed/winsup/cygwin/cygheap.cc	2007-12-11 02:19:09.985854900 +0000
@@ -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))
Only in cygwin-1.5.23-2.fixed/winsup/cygwin/include/sys: strace.h.rej
