From f3b60effac147fdae8c10a33cf213df65e0274ae Mon Sep 17 00:00:00 2001 From: Miles Bader Date: Wed, 2 Apr 2003 06:40:43 +0000 Subject: (free_to_heap): Unlock the heap before returning in the __UCLIBC_UCLINUX_BROKEN_MUNMAP__ case. Fix from YYang1@Winbond.com.tw. --- libc/stdlib/malloc/free.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'libc') diff --git a/libc/stdlib/malloc/free.c b/libc/stdlib/malloc/free.c index 3b2ec651e..88684e6df 100644 --- a/libc/stdlib/malloc/free.c +++ b/libc/stdlib/malloc/free.c @@ -1,8 +1,8 @@ /* * libc/stdlib/malloc/free.c -- free function * - * Copyright (C) 2002 NEC Corporation - * Copyright (C) 2002 Miles Bader + * Copyright (C) 2002,03 NEC Electronics Corporation + * Copyright (C) 2002,03 Miles Bader * * This file is subject to the terms and conditions of the GNU Lesser * General Public License. See the file COPYING.LIB in the main @@ -210,6 +210,9 @@ free_to_heap (void *mem, struct heap *heap) __heap_free (heap, (void *)start, end - start); } + /* Finally release the lock for good. */ + __heap_unlock (heap); + MALLOC_MMB_DEBUG_INDENT (-1); # else /* !__UCLIBC_UCLINUX_BROKEN_MUNMAP__ */ -- cgit v1.2.3