From cf8640b638ddba33885c1e02c1e1215efe0e49bd Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 26 Aug 1998 10:05:08 +0000 Subject: [PATCH] * sbrk returns -1 on error --- rtl/win32/syswin32.pp | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/rtl/win32/syswin32.pp b/rtl/win32/syswin32.pp index e257cbec6e..b105c12cc4 100644 --- a/rtl/win32/syswin32.pp +++ b/rtl/win32/syswin32.pp @@ -243,24 +243,10 @@ end; { memory functions } function GlobalAlloc(mode,size:longint):longint; external 'kernel32' name 'GlobalAlloc'; - function GlobalReAlloc(mode,size:longint):longint; - external 'kernel32' name 'GlobalReAlloc'; - function GlobalHandle(p:pointer):longint; - external 'kernel32' name 'GlobalHandle'; function GlobalLock(handle:longint):pointer; external 'kernel32' name 'GlobalLock'; - function GlobalUnlock(h:longint):longint; - external 'kernel32' name 'GlobalUnlock'; - function GlobalFree(h:longint):longint; - external 'kernel32' name 'GlobalFree'; function GlobalSize(h:longint):longint; external 'kernel32' name 'GlobalSize'; - procedure GlobalMemoryStatus(p:pointer); - external 'kernel32' name 'GlobalMemoryStatus'; - function LocalAlloc(uFlags : UINT;uBytes :UINT) : HLOCAL; - external 'kernel32' name 'LocalAlloc'; - function LocalFree(hMem:HLOCAL):HLOCAL; - external 'kernel32' name 'LocalFree'; function Sbrk(size : longint):longint; var @@ -268,8 +254,13 @@ var begin h:=GlobalAlloc(258,size); l:=longint(GlobalLock(h)); +{$ifdef SYSTEMDEBUG} Writeln('new heap part at $',hexstr(l,8), ' size = ',GlobalSize(h)); - sbrk:=l; +{$endif SYSTEMDEBUG} + if l=0 then + sbrk:=-1 + else + sbrk:=l; end; { include standard heap management } @@ -760,7 +751,10 @@ end. { $Log$ - Revision 1.16 1998-08-24 14:45:22 pierre + Revision 1.17 1998-08-26 10:05:08 peter + * sbrk returns -1 on error + + Revision 1.16 1998/08/24 14:45:22 pierre * sbrk was wrong heap growing now works for win32