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 11:48:12 -0700
commit2e7841ff51107b0ccb65f19ea4c53d5a42cefb45 (patch)
tree683475a59fd0ab39d0b2f371c127fcf2626fa045
parentf0104bee8e95c87cae9089046a70144b63805f9f (diff)
downloadsamba-2e7841ff51107b0ccb65f19ea4c53d5a42cefb45.tar.gz
samba-2e7841ff51107b0ccb65f19ea4c53d5a42cefb45.tar.bz2
samba-2e7841ff51107b0ccb65f19ea4c53d5a42cefb45.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);
+ }
}
}