Skip to content
Snippets Groups Projects
Commit 3286e13a authored by Ralf Haferkamp's avatar Ralf Haferkamp
Browse files

reset o_next pointer before freeing the operation (otherwise an assertion

failure in slap_op_free is possible)
parent 356d8629
No related branches found
No related tags found
No related merge requests found
......@@ -103,6 +103,7 @@ do_abandon( Operation *op, SlapReply *rs )
if ( o->o_msgid == id ) {
LDAP_STAILQ_REMOVE( &op->o_conn->c_pending_ops,
o, slap_op, o_next );
LDAP_STAILQ_NEXT(o, o_next) = NULL;
op->o_conn->c_n_ops_pending--;
slap_op_free( o );
goto done;
......
......@@ -66,6 +66,7 @@ int cancel_extop( Operation *op, SlapReply *rs )
LDAP_STAILQ_FOREACH( o, &op->o_conn->c_pending_ops, o_next ) {
if ( o->o_msgid == opid ) {
LDAP_STAILQ_REMOVE( &op->o_conn->c_pending_ops, o, slap_op, o_next );
LDAP_STAILQ_NEXT(o, o_next) = NULL;
op->o_conn->c_n_ops_pending--;
slap_op_free( o );
found = 1;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment