diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | malloc/malloc.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog index c94d0e4cfd..531d6b9a5c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-12-11 Ulrich Drepper <drepper@redhat.com> + + * malloc/malloc.c (_int_malloc): sYSMALLOc might fail, in this + case don't call alloc_perturb. + 2007-12-10 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ if diff --git a/malloc/malloc.c b/malloc/malloc.c index 39d5b3fa52..1e716089a2 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -4475,7 +4475,7 @@ _int_malloc(mstate av, size_t bytes) We require that av->top always exists (i.e., has size >= MINSIZE) after initialization, so if it would otherwise be - exhuasted by current request, it is replenished. (The main + exhausted by current request, it is replenished. (The main reason for ensuring it exists is that we may need MINSIZE space to put in fenceposts in sysmalloc.) */ @@ -4515,7 +4515,7 @@ _int_malloc(mstate av, size_t bytes) */ else { void *p = sYSMALLOc(nb, av); - if (__builtin_expect (perturb_byte, 0)) + if (p != NULL && __builtin_expect (perturb_byte, 0)) alloc_perturb (p, bytes); return p; } |