summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-04-26 13:46:43 +0000
committerUlrich Drepper <drepper@redhat.com>2001-04-26 13:46:43 +0000
commit1b20d937f379c03537843cda49fdd7d4fdfbd5ab (patch)
tree93fb66a2d83a8a3c00e54d02face33021981814d
parent48a92e9d2da28b7bef8474f1effda68c13ed2fd1 (diff)
Update.
* malloc/mcheck.c (mcheck): Call malloc once before setting the hooks to allow the internal check hooks to be set up if necessary.
-rw-r--r--ChangeLog3
-rw-r--r--malloc/mcheck.c4
2 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 08ecaabeb7..f16b9d6bf4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2001-04-26 Ulrich Drepper <drepper@redhat.com>
+ * malloc/mcheck.c (mcheck): Call malloc once before setting the
+ hooks to allow the internal check hooks to be set up if necessary.
+
* nis/nss-nis.h: Move yperr2nss_tab definition into separate file
and rename to __yperr2nss_tab. Change YPERR_COUNT into variable
__yperr2nss_count.
diff --git a/malloc/mcheck.c b/malloc/mcheck.c
index f17bc0c0c5..971e2e52c6 100644
--- a/malloc/mcheck.c
+++ b/malloc/mcheck.c
@@ -315,6 +315,10 @@ mcheck (func)
/* These hooks may not be safely inserted if malloc is already in use. */
if (__malloc_initialized <= 0 && !mcheck_used)
{
+ /* We call malloc() once here to ensure it is initialized. */
+ void *p = malloc (0);
+ free (p);
+
old_free_hook = __free_hook;
__free_hook = freehook;
old_malloc_hook = __malloc_hook;