summaryrefslogtreecommitdiff
path: root/ctdb
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronniesahlberg@gmail.com>2011-03-16 14:55:58 +1100
committerRonnie Sahlberg <sahlberg@lenovo-laptop.(none)>2011-03-16 16:08:45 +1100
commitcee8c4be94b290318ba921e129292791bf846010 (patch)
tree6dd5b4efa2b9af864a67cececc13418429b99c9d /ctdb
parentf82936402f7539fc091ea90ebc888e8aeecf6896 (diff)
downloadsamba-cee8c4be94b290318ba921e129292791bf846010.tar.gz
Deferred attach: create the timed event as a child context of the da context we want to delete.
Othwervise the da context can be timed out and talloc_free()d but the event for this already freed object will still trigger, causing a talloc error and shutdown. CQ S1022515 (This used to be ctdb commit 2fd27bdedb1e0d6558c07e1b74fc8e70ddf593dc)
Diffstat (limited to 'ctdb')
-rw-r--r--ctdb/server/ctdb_ltdb_server.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ctdb/server/ctdb_ltdb_server.c b/ctdb/server/ctdb_ltdb_server.c
index fe061e79c8f..a93e2fa0c95 100644
--- a/ctdb/server/ctdb_ltdb_server.c
+++ b/ctdb/server/ctdb_ltdb_server.c
@@ -990,7 +990,7 @@ int ctdb_process_deferred_attach(struct ctdb_context *ctdb)
*/
while ((da_ctx = ctdb->deferred_attach) != NULL) {
DLIST_REMOVE(ctdb->deferred_attach, da_ctx);
- event_add_timed(ctdb->ev, ctdb, timeval_current_ofs(1,0), ctdb_deferred_attach_callback, da_ctx);
+ event_add_timed(ctdb->ev, da_ctx, timeval_current_ofs(1,0), ctdb_deferred_attach_callback, da_ctx);
}
return 0;