]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-ldbm/cache.c
Change overlapping `strcpy( x, y )' to `SAFEMEMCPY( x, y, strlen( y ) + 1 )'
[openldap] / servers / slapd / back-ldbm / cache.c
index 1674432d69d37b94d78bc80d4290c17e22617a62..01a92295df87d35dbafa2f37994085d77804c814 100644 (file)
@@ -200,7 +200,7 @@ cache_add_entry_lock(
 
                        /* XXX check for writer lock - should also check no readers pending */
 #ifdef LDAP_DEBUG
-                       assert(pthread_rdwr_wchk_np(&e->e_rdwr));
+                       assert(!pthread_rdwr_rwchk_np(&e->e_rdwr));
 #endif
 
                        /* delete from cache and lru q */
@@ -417,18 +417,24 @@ cache_delete_entry_internal(
     Entry              *e
 )
 {
+       int rc = 0;     /* return code */
+
        /* dn tree */
        if ( avl_delete( &cache->c_dntree, (caddr_t) e, cache_entrydn_cmp )
                == NULL )
        {
-               return( -1 );
+               rc = -1;
        }
 
        /* id tree */
        if ( avl_delete( &cache->c_idtree, (caddr_t) e, cache_entryid_cmp )
                == NULL )
        {
-               return( -1 );
+               rc = -1;
+       }
+
+       if (rc != 0) {
+               return rc;
        }
 
        /* lru */