* and release the add lock.
*/
pthread_mutex_lock(&li->li_root_mutex);
+ rootlock = 1;
pthread_mutex_unlock(&li->li_add_mutex);
- rootlock=1;
}
/*
if( p != NULL) {
/* free parent and writer lock */
cache_return_entry_w( &li->li_cache, p );
- } else if ( rootlock ) {
+ }
+ if ( rootlock ) {
/* release root lock */
pthread_mutex_unlock(&li->li_root_mutex);
}
if (p != NULL) {
/* free parent and writer lock */
cache_return_entry_w( &li->li_cache, p );
+ }
- } else if ( rootlock ) {
+ if ( rootlock ) {
/* release root lock */
pthread_mutex_unlock(&li->li_root_mutex);
}
if( p != NULL ) {
/* free parent and writer lock */
cache_return_entry_w( &li->li_cache, p );
+ }
- } else if ( rootlock ) {
+ if ( rootlock ) {
/* release root lock */
pthread_mutex_unlock(&li->li_root_mutex);
}
Debug(LDAP_DEBUG_ARGS, "ldbm_back_modify:\n", 0, 0, 0);
+ /* acquire and lock entry */
if ( (e = dn2entry_w( be, dn, &matched )) == NULL ) {
send_ldap_result( conn, op, LDAP_NO_SUCH_OBJECT, matched,
NULL );
return( -1 );
}
- /* check for deleted */
-
- /* lock entry */
-
if ( (err = acl_check_modlist( be, conn, op, e, modlist )) != LDAP_SUCCESS ) {
send_ldap_result( conn, op, err, NULL, NULL );
goto error_return;
if( p != NULL ) {
/* free parent and writer lock */
cache_return_entry_w( &li->li_cache, p );
+ }
- } else if ( rootlock ) {
+ if ( rootlock ) {
/* release root writer lock */
pthread_mutex_unlock(&li->li_root_mutex);
}