ソースを参照

(realloc): Record the correct size in the malloc header in the case
where we extended the existing allocation, and got back more than we
asked for from the heap.

Miles Bader 23 年 前
コミット
5752e10795
1 ファイル変更1 行追加1 行削除
  1. 1 1
      libc/stdlib/malloc/realloc.c

+ 1 - 1
libc/stdlib/malloc/realloc.c

@@ -57,7 +57,7 @@ realloc (void *mem, size_t new_size)
 
       if (extra)
 	/* Record the changed size.  */
-	MALLOC_SET_SIZE (base_mem, new_size);
+	MALLOC_SET_SIZE (base_mem, size + extra);
       else
 	/* Our attempts to extend MEM in place failed, just
 	   allocate-and-copy.  */