X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fmalloc%2Fmalloc.c;h=9e05e1d6ade9bb75c52811cbbb0c0f95049fafa8;hb=ebd8ef50d5012733d86ed4a6834ca6d776b069ae;hp=d5ee4280e9324ead8464dfd7ad2f37eb21d950d1;hpb=1c86c7f5c26dd0569df7afc23ee9866fb3f645dc;p=musl diff --git a/src/malloc/malloc.c b/src/malloc/malloc.c index d5ee4280..9e05e1d6 100644 --- a/src/malloc/malloc.c +++ b/src/malloc/malloc.c @@ -450,14 +450,15 @@ copy_realloc: void free(void *p) { - struct chunk *self = MEM_TO_CHUNK(p); - struct chunk *next; + struct chunk *self, *next; size_t final_size, new_size, size; int reclaim=0; int i; if (!p) return; + self = MEM_TO_CHUNK(p); + if (IS_MMAPPED(self)) { size_t extra = self->psize; char *base = (char *)self - extra;