summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamen Mazdrashki <kamen.mazdrashki@postpath.com>2010-03-03 02:33:31 +0200
committerAndrew Bartlett <abartlet@samba.org>2010-03-03 13:18:38 +1100
commit5338e42182ee34f20fde104006a752662099af22 (patch)
tree6314dd3a2da22183e9ffa1e383a3699a38e3239d
parente3c2e1a30375c393f0ee0d50e814e7c7482c5182 (diff)
downloadsamba-5338e42182ee34f20fde104006a752662099af22.tar.gz
samba-5338e42182ee34f20fde104006a752662099af22.tar.bz2
samba-5338e42182ee34f20fde104006a752662099af22.zip
s4/ildap: fine tune ildb_callback()
Actually ildb_context pointer is not supposed to be valid after calling ildb_request_done(). This is due to the fact that when calling ildb_request_done() caller will (most probably) free any locally built ldap_request objects - thus rendering ildb_context invalid. Signed-off-by: Andrew Bartlett <abartlet@samba.org>
-rw-r--r--source4/lib/ldb/ldb_ildap/ldb_ildap.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source4/lib/ldb/ldb_ildap/ldb_ildap.c b/source4/lib/ldb/ldb_ildap/ldb_ildap.c
index 3110008c9f..9f81c4e534 100644
--- a/source4/lib/ldb/ldb_ildap/ldb_ildap.c
+++ b/source4/lib/ldb/ldb_ildap/ldb_ildap.c
@@ -383,13 +383,13 @@ static void ildb_callback(struct ldap_request *req)
}
}
+ /* mark the request as not being in progress */
+ ac->in_ildb_callback = false;
+
if (request_done) {
ildb_request_done(ac, controls, ret);
}
- /* unmark the request as beign in progress */
- ac->in_ildb_callback = false;
-
return;
}