diff options
| author | Alexander Langer <alex@FreeBSD.org> | 1998-09-19 20:55:36 +0000 | 
|---|---|---|
| committer | Alexander Langer <alex@FreeBSD.org> | 1998-09-19 20:55:36 +0000 | 
| commit | 366248e086aefe5f4f54a8c396fa61823b9c17c9 (patch) | |
| tree | da3a232524cbce350fc32be8daad52d7b9eb52ce | |
| parent | fe840f95a8d4f8a4b6ae9d7430343c4b6fd77136 (diff) | |
Notes
| -rw-r--r-- | lib/libc/stdlib/malloc.c | 15 | 
1 files changed, 7 insertions, 8 deletions
| diff --git a/lib/libc/stdlib/malloc.c b/lib/libc/stdlib/malloc.c index 44cf8c0c3d29..13aed8028e65 100644 --- a/lib/libc/stdlib/malloc.c +++ b/lib/libc/stdlib/malloc.c @@ -6,7 +6,7 @@   * this stuff is worth it, you can buy me a beer in return.   Poul-Henning Kamp   * ----------------------------------------------------------------------------   * - * $Id: malloc.c,v 1.38 1998/06/09 08:30:32 jb Exp $ + * $Id: malloc.c,v 1.39 1998/06/18 09:13:16 peter Exp $   *   */ @@ -1059,8 +1059,8 @@ malloc(size_t size)  {      register void *r; -    malloc_func = " in malloc():";      THREAD_LOCK(); +    malloc_func = " in malloc():";      if (malloc_active++) {  	wrtwarning("recursive call.\n");          malloc_active--; @@ -1083,15 +1083,14 @@ malloc(size_t size)  void  free(void *ptr)  { -    malloc_func = " in free():";      THREAD_LOCK(); +    malloc_func = " in free():";      if (malloc_active++) {  	wrtwarning("recursive call.\n"); -        malloc_active--; -	return; +    } else { +	ifree(ptr); +	UTRACE(ptr, 0, 0);      } -    ifree(ptr); -    UTRACE(ptr, 0, 0);      malloc_active--;      THREAD_UNLOCK();      return; @@ -1102,8 +1101,8 @@ realloc(void *ptr, size_t size)  {      register void *r; -    malloc_func = " in realloc():";      THREAD_LOCK(); +    malloc_func = " in realloc():";      if (malloc_active++) {  	wrtwarning("recursive call.\n");          malloc_active--; | 
