X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Foperation.c;h=4745076706df80f14c9b254fda7f9097a6cf0ace;hb=4e4818771c26a4c02808130970f2a5e4c216ef52;hp=49c1a7b58c50815c7506a5fef15d79119f1d3c93;hpb=50d490be6c54e81fbbe464ae1233660e90fff958;p=openldap diff --git a/servers/slapd/operation.c b/servers/slapd/operation.c index 49c1a7b58c..4745076706 100644 --- a/servers/slapd/operation.c +++ b/servers/slapd/operation.c @@ -6,6 +6,7 @@ */ #include "portable.h" +#include "slapi_common.h" #include @@ -13,6 +14,7 @@ #include #include "slap.h" +#include "slapi.h" void @@ -36,6 +38,18 @@ slap_op_free( Operation *op ) ldap_controls_free( op->o_ctrls ); } +#ifdef LDAP_CLIENT_UPDATE + if ( op->o_clientupdate_state.bv_val != NULL ) { + free( op->o_clientupdate_state.bv_val ); + } +#endif /* LDAP_CLIENT_UPDATE */ + +#if defined( LDAP_SLAPI ) + if ( op->o_pb != NULL ) { + slapi_pblock_destroy( (Slapi_PBlock *)op->o_pb ); + } +#endif /* defined( LDAP_SLAPI ) */ + free( (char *) op ); } @@ -58,5 +72,9 @@ slap_op_alloc( op->o_time = slap_get_time(); op->o_opid = id; +#if defined( LDAP_SLAPI ) + op->o_pb = slapi_pblock_new(); +#endif /* defined( LDAP_SLAPI ) */ + return( op ); }