From f9b51ff33e10aa126de848072e98b0bf36a7dbc7 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Wed, 18 Jul 2012 04:56:31 +0930 Subject: talloc_stack: always include the location when creating a talloc_stackframe(). Much better for debugging. Signed-off-by: Rusty Russell --- lib/util/talloc_stack.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'lib/util/talloc_stack.c') diff --git a/lib/util/talloc_stack.c b/lib/util/talloc_stack.c index b837843c84..304ea17d8c 100644 --- a/lib/util/talloc_stack.c +++ b/lib/util/talloc_stack.c @@ -115,7 +115,8 @@ static int talloc_pop(TALLOC_CTX *frame) * not explicitly freed. */ -static TALLOC_CTX *talloc_stackframe_internal(size_t poolsize) +static TALLOC_CTX *talloc_stackframe_internal(const char *location, + size_t poolsize) { TALLOC_CTX **tmp, *top; struct talloc_stackframe *ts = @@ -151,7 +152,7 @@ static TALLOC_CTX *talloc_stackframe_internal(size_t poolsize) if (top == NULL) { goto fail; } - + talloc_set_name_const(top, location); talloc_set_destructor(top, talloc_pop); ts->talloc_stack[ts->talloc_stacksize++] = top; @@ -162,14 +163,14 @@ static TALLOC_CTX *talloc_stackframe_internal(size_t poolsize) return NULL; } -TALLOC_CTX *talloc_stackframe(void) +TALLOC_CTX *_talloc_stackframe(const char *location) { - return talloc_stackframe_internal(0); + return talloc_stackframe_internal(location, 0); } -TALLOC_CTX *talloc_stackframe_pool(size_t poolsize) +TALLOC_CTX *_talloc_stackframe_pool(const char *location, size_t poolsize) { - return talloc_stackframe_internal(poolsize); + return talloc_stackframe_internal(location, poolsize); } /* -- cgit