mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-24 16:49:39 -05:00
ITS#5484 remove syncop from runq before freeing it
This commit is contained in:
parent
fd0699edf4
commit
90a45655c2
1 changed files with 7 additions and 0 deletions
|
|
@ -737,6 +737,13 @@ syncprov_free_syncop( syncops *so )
|
|||
ldap_pvt_thread_mutex_unlock( &so->s_mutex );
|
||||
return;
|
||||
}
|
||||
if ( so->s_qtask ) {
|
||||
ldap_pvt_thread_mutex_lock( &slapd_rq.rq_mutex );
|
||||
if ( ldap_pvt_runqueue_isrunning( &slapd_rq, so->s_qtask ) )
|
||||
ldap_pvt_runqueue_stoptask( &slapd_rq, so->s_qtask );
|
||||
ldap_pvt_runqueue_remove( &slapd_rq, so->s_qtask );
|
||||
ldap_pvt_thread_mutex_unlock( &slapd_rq.rq_mutex );
|
||||
}
|
||||
ldap_pvt_thread_mutex_unlock( &so->s_mutex );
|
||||
if ( so->s_flags & PS_IS_DETACHED ) {
|
||||
filter_free( so->s_op->ors_filter );
|
||||
|
|
|
|||
Loading…
Reference in a new issue