aboutsummaryrefslogtreecommitdiffstats
path: root/lib/malloc/trace.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/malloc/trace.c')
-rw-r--r--lib/malloc/trace.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/lib/malloc/trace.c b/lib/malloc/trace.c
index ddd62f0..9dc34df 100644
--- a/lib/malloc/trace.c
+++ b/lib/malloc/trace.c
@@ -1,6 +1,6 @@
/* trace.c - tracing functions for malloc */
-/* Copyright (C) 2001 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2003 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
@@ -29,6 +29,8 @@ extern int malloc_trace;
static int _mtrace_verbose = 0;
+extern FILE *_imalloc_fopen __P((char *, char *, char *, char *, size_t));
+
#ifdef MALLOC_TRACE
FILE *_mtrace_fp = NULL;
@@ -101,3 +103,20 @@ malloc_trace_bin (n)
_malloc_trace_buckets[n] = 1;
#endif
}
+
+#define TRACEROOT "/var/tmp/maltrace/trace."
+
+void
+malloc_set_tracefn (s, fn)
+ char *s;
+ char *fn;
+{
+#ifdef MALLOC_TRACE
+ FILE *fp;
+ char defname[sizeof (TRACEROOT) + 64];
+
+ fp = _imalloc_fopen (s, fn, TRACEROOT, defname, sizeof (defname));
+ if (fp)
+ malloc_set_tracefp (fp);
+#endif
+}