sbrk() returns a pointer, so it should be 64 bits

This commit is contained in:
Robert Morris 2019-07-01 17:01:50 -04:00
parent 9b99f00743
commit 18e76a6c47
4 changed files with 52 additions and 45 deletions

View file

@ -1438,6 +1438,13 @@ sbrktest(void)
printf(stdout, "sbrk test\n");
oldbrk = sbrk(0);
// does sbrk() return the expected failure value?
a = sbrk(1024*1024*1024);
if(a != (char*)0xffffffffffffffffL){
printf(stdout, "sbrk(<toomuch>) returned %p\n", a);
exit();
}
// can one sbrk() less than a page?
a = sbrk(0);
for(i = 0; i < 5000; i++){
@ -1478,7 +1485,7 @@ sbrktest(void)
// can one de-allocate?
a = sbrk(0);
c = sbrk(-4096);
if(c == (char*)0xffffffff){
if(c == (char*)0xffffffffffffffffL){
printf(stdout, "sbrk could not deallocate\n");
exit();
}
@ -1551,7 +1558,7 @@ sbrktest(void)
kill(pids[i]);
wait();
}
if(c == (char*)0xffffffff){
if(c == (char*)0xffffffffffffffffL){
printf(stdout, "failed sbrk leaked memory\n");
exit();
}