]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-ldbm/entry.c
ITS#2348 - revert previous patch, use patch from ITS
[openldap] / servers / slapd / back-ldbm / entry.c
index 28267e39fb658ccaa8d804c4e308461326954b22..4c87512b32f52f9daa3523d44166e04db327274c 100644 (file)
@@ -1,7 +1,7 @@
 /* entry.c - ldbm backend entry_release routine */
 /* $OpenLDAP$ */
 /*
- * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 1998-2003 The OpenLDAP Foundation, All Rights Reserved.
  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
  */
 
@@ -31,8 +31,13 @@ ldbm_back_entry_release_rw(
        if ( slapMode == SLAP_SERVER_MODE ) {
                /* free entry and reader or writer lock */
                cache_return_entry_rw( &li->li_cache, e, rw ); 
+               if( rw ) {
+                       ldap_pvt_thread_rdwr_wunlock( &li->li_giant_rwlock );
+               } else {
+                       ldap_pvt_thread_rdwr_runlock( &li->li_giant_rwlock );
+               }
+
        } else {
-               
                entry_free( e );
        }