aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--malloc/malloc.c4
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;
}