aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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;