runtime: Correct test of mmap return value.

From-SVN: r180731
This commit is contained in:
Ian Lance Taylor 2011-11-01 04:55:15 +00:00
parent 207c35fa9e
commit 3d43396098
1 changed files with 6 additions and 1 deletions

View File

@ -85,6 +85,7 @@ void*
runtime_SysReserve(void *v, uintptr n)
{
int fd = -1;
void *p;
// On 64-bit, people with ulimit -v set complain if we reserve too
// much address space. Instead, assume that the reservation is okay
@ -103,7 +104,11 @@ runtime_SysReserve(void *v, uintptr n)
fd = dev_zero;
#endif
return runtime_mmap(v, n, PROT_NONE, MAP_ANON|MAP_PRIVATE, fd, 0);
p = runtime_mmap(v, n, PROT_NONE, MAP_ANON|MAP_PRIVATE, fd, 0);
if((uintptr)p < 4096 || -(uintptr)p < 4096) {
return nil;
}
return p;
}
void