summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/lib/ldb/common/ldb.c5
-rw-r--r--source4/lib/ldb/ldb_ildap/ldb_ildap.c2
-rw-r--r--source4/lib/ldb/modules/paged_results.c8
3 files changed, 5 insertions, 10 deletions
diff --git a/source4/lib/ldb/common/ldb.c b/source4/lib/ldb/common/ldb.c
index 50ec106d84..1089fb3d92 100644
--- a/source4/lib/ldb/common/ldb.c
+++ b/source4/lib/ldb/common/ldb.c
@@ -548,10 +548,7 @@ static int ldb_search_callback(struct ldb_context *ldb, void *context, struct ld
res->refs[n + 1] = NULL;
}
- if (ares->controls) {
- res->controls = talloc_move(res, ares->controls);
- }
-
+ talloc_steal(res, ares->controls);
talloc_free(ares);
return LDB_SUCCESS;
diff --git a/source4/lib/ldb/ldb_ildap/ldb_ildap.c b/source4/lib/ldb/ldb_ildap/ldb_ildap.c
index b826a31b40..49a8e8627a 100644
--- a/source4/lib/ldb/ldb_ildap/ldb_ildap.c
+++ b/source4/lib/ldb/ldb_ildap/ldb_ildap.c
@@ -381,7 +381,6 @@ static int ildb_request_send(struct ldb_module *module, struct ldap_message *msg
return LDB_ERR_OPERATIONS_ERROR;
}
- ildb_ac->req = talloc_move(ildb_ac, req);
talloc_free(req->time_event);
req->time_event = NULL;
if (timeout) {
@@ -392,6 +391,7 @@ static int ildb_request_send(struct ldb_module *module, struct ldap_message *msg
req->async.fn = ildb_callback;
req->async.private_data = (void *)h;
+ ildb_ac->req = talloc_move(ildb_ac, req);
*handle = h;
return LDB_SUCCESS;
diff --git a/source4/lib/ldb/modules/paged_results.c b/source4/lib/ldb/modules/paged_results.c
index 43c3fc0246..6636efcccb 100644
--- a/source4/lib/ldb/modules/paged_results.c
+++ b/source4/lib/ldb/modules/paged_results.c
@@ -190,7 +190,7 @@ static int paged_search_callback(struct ldb_context *ldb, void *context, struct
ac->store->num_entries++;
- ac->store->last->r = talloc_move(ac->store->last, ares);
+ ac->store->last->r = talloc_steal(ac->store->last, ares);
ac->store->last->next = NULL;
}
@@ -205,14 +205,12 @@ static int paged_search_callback(struct ldb_context *ldb, void *context, struct
goto error;
}
- ac->store->last_ref->r = talloc_move(ac->store->last, ares);
+ ac->store->last_ref->r = talloc_steal(ac->store->last, ares);
ac->store->last_ref->next = NULL;
}
if (ares->type == LDB_REPLY_DONE) {
- if (ares->controls) {
- ac->store->controls = talloc_move(ac->store, ares->controls);
- }
+ ac->store->controls = talloc_move(ac->store, ares->controls);
talloc_free(ares);
}