diff --git a/servers/slapd/overlays/pcache.c b/servers/slapd/overlays/pcache.c index 6f96ced908..cb03e3ed80 100644 --- a/servers/slapd/overlays/pcache.c +++ b/servers/slapd/overlays/pcache.c @@ -1601,6 +1601,8 @@ add_query( templ->no_of_queries++; } else { ldap_pvt_thread_mutex_destroy(&new_cached_query->answerable_cnt_mutex); + if (wlock) + ldap_pvt_thread_rdwr_wunlock(&new_cached_query->rwlock); ldap_pvt_thread_rdwr_destroy( &new_cached_query->rwlock ); ch_free( new_cached_query ); new_cached_query = find_filter( op, qbase->scopes[query->scope],