From: Andrej Gessel Date: Mon, 16 Jul 2018 09:39:05 +0000 (+0200) Subject: fix mem leak in ltdb_index_dn_base_dn and ltdb_search_indexed X-Git-Url: http://git.samba.org/samba.git/?p=amitay%2Fsamba.git;a=commitdiff_plain;h=d645546aef452fc372b7cc7e1602562f0e88943c;hp=b9e2a2de247add415b4681c93849a9c9ba6f3c4a fix mem leak in ltdb_index_dn_base_dn and ltdb_search_indexed Signed-off-by: Andrej Gessel Reviewed-by: Andrew Bartlett Reviewed-by: Douglas Bagnall --- diff --git a/lib/ldb/ldb_key_value/ldb_kv_index.c b/lib/ldb/ldb_key_value/ldb_kv_index.c index 4e9d9043bfd..6c21c19d654 100644 --- a/lib/ldb/ldb_key_value/ldb_kv_index.c +++ b/lib/ldb/ldb_key_value/ldb_kv_index.c @@ -1684,6 +1684,7 @@ static int ldb_kv_index_dn_base_dn(struct ldb_module *module, dn_list->dn[0].data = discard_const_p(unsigned char, ldb_dn_get_linearized(base_dn)); if (dn_list->dn[0].data == NULL) { + talloc_free(dn_list->dn); return ldb_module_oom(module); } dn_list->dn[0].length = strlen((char *)dn_list->dn[0].data); @@ -2039,6 +2040,7 @@ int ldb_kv_search_indexed(struct ldb_kv_context *ac, uint32_t *match_count) struct dn_list *idx_one_tree_list = talloc_zero(ac, struct dn_list); if (idx_one_tree_list == NULL) { + talloc_free(dn_list); return ldb_module_oom(ac->module); }