Add some more assertion checking where it was lacking.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2477
This commit is contained in:
Nicholas Nethercote
2004-07-11 18:11:33 +00:00
parent 138739e464
commit 9914c7fe6e

View File

@@ -405,12 +405,15 @@ void* VG_(brk) ( void* end_data_segment )
}
if (brkpage != endpage) {
if (brkpage > endpage)
munmap_inner((void *)brkpage, brkpage-endpage);
else
mmap_inner((void *)brkpage, endpage-brkpage,
VKI_PROT_READ|VKI_PROT_WRITE|VKI_PROT_EXEC,
VKI_MAP_FIXED|VKI_MAP_PRIVATE|VKI_MAP_ANONYMOUS, -1, 0);
if (brkpage > endpage) {
Int res = munmap_inner((void *)brkpage, brkpage-endpage);
vg_assert(0 == res);
} else {
Addr res = mmap_inner((void *)brkpage, endpage-brkpage,
VKI_PROT_READ|VKI_PROT_WRITE|VKI_PROT_EXEC,
VKI_MAP_FIXED|VKI_MAP_PRIVATE|VKI_MAP_ANONYMOUS, -1, 0);
vg_assert((Addr)-1 != res);
}
}
VG_(curbrk) = (Char *)__curbrk = end_data_segment;