mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
* malloc/malloc.c (do_check_chunk): Correct check for mmaped block
not overlapping with arena.
This commit is contained in:
@ -1,5 +1,8 @@
|
|||||||
2007-05-18 Ulrich Drepper <drepper@redhat.com>
|
2007-05-18 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* malloc/malloc.c (do_check_chunk): Correct check for mmaped block
|
||||||
|
not overlapping with arena.
|
||||||
|
|
||||||
* malloc/mcheck.c (reallochook): If size==0, free the block.
|
* malloc/mcheck.c (reallochook): If size==0, free the block.
|
||||||
|
|
||||||
* rt/tst-shm.c: Use fstat64 instead of fstat.
|
* rt/tst-shm.c: Use fstat64 instead of fstat.
|
||||||
|
@ -2572,7 +2572,7 @@ static void do_check_chunk(av, p) mstate av; mchunkptr p;
|
|||||||
#if HAVE_MMAP
|
#if HAVE_MMAP
|
||||||
/* address is outside main heap */
|
/* address is outside main heap */
|
||||||
if (contiguous(av) && av->top != initial_top(av)) {
|
if (contiguous(av) && av->top != initial_top(av)) {
|
||||||
assert(((char*)p) < min_address || ((char*)p) > max_address);
|
assert(((char*)p) < min_address || ((char*)p) >= max_address);
|
||||||
}
|
}
|
||||||
/* chunk is page-aligned */
|
/* chunk is page-aligned */
|
||||||
assert(((p->prev_size + sz) & (mp_.pagesize-1)) == 0);
|
assert(((p->prev_size + sz) & (mp_.pagesize-1)) == 0);
|
||||||
|
@ -267,7 +267,7 @@ reallochook (__ptr_t ptr, __malloc_size_t size, const __ptr_t caller)
|
|||||||
if (size == 0)
|
if (size == 0)
|
||||||
{
|
{
|
||||||
freehook (ptr, caller);
|
freehook (ptr, caller);
|
||||||
return;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct hdr *hdr;
|
struct hdr *hdr;
|
||||||
|
Reference in New Issue
Block a user