summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/dsdb/schema/schema_set.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/source4/dsdb/schema/schema_set.c b/source4/dsdb/schema/schema_set.c
index 976abc2463..8b1188a1b5 100644
--- a/source4/dsdb/schema/schema_set.c
+++ b/source4/dsdb/schema/schema_set.c
@@ -433,10 +433,11 @@ void dsdb_make_schema_global(struct ldb_context *ldb)
}
if (global_schema) {
- talloc_unlink(talloc_autofree_context(), schema);
+ talloc_unlink(talloc_autofree_context(), global_schema);
}
- talloc_steal(talloc_autofree_context(), schema);
+ /* we want the schema to be around permanently */
+ talloc_reference(talloc_autofree_context(), schema);
global_schema = schema;
dsdb_set_global_schema(ldb);