diff options
author | Martin Pool <mbp@samba.org> | 2001-12-19 07:36:32 +0000 |
---|---|---|
committer | Martin Pool <mbp@samba.org> | 2001-12-19 07:36:32 +0000 |
commit | 7110a867a1eb8284f84d55c7507531a10733f5c7 (patch) | |
tree | 7e87e8ab0fb667dfb380988afa4f42ffa764643f /source3/lib/talloctort.c | |
parent | fc00418dfc8863a17a98cb621ab98fa522dff01b (diff) | |
download | samba-7110a867a1eb8284f84d55c7507531a10733f5c7.tar.gz samba-7110a867a1eb8284f84d55c7507531a10733f5c7.tar.bz2 samba-7110a867a1eb8284f84d55c7507531a10733f5c7.zip |
Make TALLOC_CTX and talloc_chunk private to talloc.c.
Add a global singly-linked list of all active talloc pools, so that we
can eventually show how much memory is used for different purposes.
This also gives a check that pools are not being doubly freed.
talloc_init_named now handle a NULL name properly (ie does nothing)
Add accessor talloc_pool_name().
(This used to be commit 4c6c03c8c7c18762dd9ef1a1bd88350b8960542f)
Diffstat (limited to 'source3/lib/talloctort.c')
-rw-r--r-- | source3/lib/talloctort.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/source3/lib/talloctort.c b/source3/lib/talloctort.c index 61f9532f6e..f43a4e4f9f 100644 --- a/source3/lib/talloctort.c +++ b/source3/lib/talloctort.c @@ -41,16 +41,21 @@ int main(void) p = talloc(ctx[i], size); if (!p) { fprintf(stderr, - "failed to talloc %0.f bytes\n", size); + "failed to talloc %.0f bytes\n", + (double) size); exit(1); } } } for (i = 0; i < NCTX; i++) { - printf("talloc@%p %-40s %db\n", ctx[i], ctx[i]->name, - ctx[i]->total_alloc_size); + printf("talloc@%p %-40s %db\n", ctx[i], + talloc_pool_name(ctx[i]), + talloc_pool_size(ctx[i])); } + for (i = NCTX - 1; i >= 0; i--) + talloc_destroy(ctx[i]); + return 0; } |