summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--malloc/malloc.c2
-rw-r--r--malloc/mcheck.c2
3 files changed, 5 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index d5e1de39cd..5413c12889 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 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.
 
 	* rt/tst-shm.c: Use fstat64 instead of fstat.
diff --git a/malloc/malloc.c b/malloc/malloc.c
index e061db94d6..d37d920cd1 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -2572,7 +2572,7 @@ static void do_check_chunk(av, p) mstate av; mchunkptr p;
 #if HAVE_MMAP
     /* address is outside main heap  */
     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 */
     assert(((p->prev_size + sz) & (mp_.pagesize-1)) == 0);
diff --git a/malloc/mcheck.c b/malloc/mcheck.c
index 4e0d4b5b7d..524acc755c 100644
--- a/malloc/mcheck.c
+++ b/malloc/mcheck.c
@@ -267,7 +267,7 @@ reallochook (__ptr_t ptr, __malloc_size_t size, const __ptr_t caller)
   if (size == 0)
     {
       freehook (ptr, caller);
-      return;
+      return NULL;
     }
 
   struct hdr *hdr;