diff options
author | Ulrich Drepper <drepper@redhat.com> | 2010-10-24 22:37:00 -0400 |
---|---|---|
committer | Petr Baudis <pasky@suse.cz> | 2010-11-09 02:43:15 +0100 |
commit | fa55fd7e5b1da8bd2dddffab82931e2495e82435 (patch) | |
tree | 032c5f0a5ce4dbb57e1d4c9965024a1fd81f253d | |
parent | 7f5aef2309fe5eb482cfa37193a185905403f3a8 (diff) | |
download | glibc-fa55fd7e5b1da8bd2dddffab82931e2495e82435.tar.gz |
Fix perturbing in malloc on free.
(cherry picked from commit fdc0f374bcd2d0513569aa8d600f960e43e8af1d)
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | malloc/malloc.c | 4 |
2 files changed, 8 insertions, 2 deletions
@@ -1,3 +1,9 @@ +2010-10-24 Ulrich Drepper <drepper@redhat.com> + + [BZ #12140] + * malloc/malloc.c (_int_free): Fill correct number of bytes when + perturbing. + 2010-09-09 Andreas Schwab <schwab@redhat.com> * Makeconfig (sysd-rules-patterns): Add rtld-%:rtld-%. diff --git a/malloc/malloc.c b/malloc/malloc.c index b1d43c6447..29c79923d1 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -4850,7 +4850,7 @@ _int_free(mstate av, mchunkptr p) } if (__builtin_expect (perturb_byte, 0)) - free_perturb (chunk2mem(p), size - SIZE_SZ); + free_perturb (chunk2mem(p), size - 2 * SIZE_SZ); set_fastchunks(av); fb = &fastbin (av, fastbin_index(size)); @@ -4938,7 +4938,7 @@ _int_free(mstate av, mchunkptr p) } if (__builtin_expect (perturb_byte, 0)) - free_perturb (chunk2mem(p), size - SIZE_SZ); + free_perturb (chunk2mem(p), size - 2 * SIZE_SZ); /* consolidate backward */ if (!prev_inuse(p)) { |