summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2009-09-15 09:43:27 -0700
committerAndrew Tridgell <tridge@samba.org>2009-09-15 09:43:27 -0700
commit209c278f1fdb315ebf6c83e164e518cc6737480e (patch)
tree76e5001442e2b3090718fdb03cc66c571d3a4628
parent865e65a163145b0aee724210744955af96d618b8 (diff)
downloadsamba-209c278f1fdb315ebf6c83e164e518cc6737480e.tar.gz
samba-209c278f1fdb315ebf6c83e164e518cc6737480e.tar.bz2
samba-209c278f1fdb315ebf6c83e164e518cc6737480e.zip
talloc: when we enable NULL tracking, reparent the autofree context
If NULL tracking is enabled after the autofree context is initialised then autofree ends up separate from the null_context. This means that talloc_report_full() doesn't report the autofree context. Fix this by reparenting the autofree context when we create the null_context.
-rw-r--r--lib/talloc/talloc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/talloc/talloc.c b/lib/talloc/talloc.c
index 2709741dfc..478767c955 100644
--- a/lib/talloc/talloc.c
+++ b/lib/talloc/talloc.c
@@ -1468,6 +1468,9 @@ void talloc_enable_null_tracking(void)
{
if (null_context == NULL) {
null_context = _talloc_named_const(NULL, 0, "null_context");
+ if (autofree_context != NULL) {
+ talloc_reparent(NULL, null_context, autofree_context);
+ }
}
}