FreeBSD/contrib/subversion/subversion/libsvn_subr/cache-membuffer.c
/* Remove ENTRY from the chain of items that belong to LEVEL in CACHE. IDX
 * is ENTRY's item index and is only given for efficiency.  Please note
 * that neither *CACHE nor *ENTRY will not be modified.
 */
Remove ENTRY from the chain of items that belong to LEVEL in CACHE. IDX
is ENTRY's item index and is only given for efficiency.  Please note
that neither *CACHE nor *ENTRY will not be modified.
Remove ENTRY from the chain of items that belong to LEVEL in CACHE . IDX is ENTRY ' s item index and is only given for efficiency . Please note that neither * CACHE nor * ENTRY will not be modified .
static void
unchain_entry(svn_membuffer_t *cache,
              cache_level_t *level,
              entry_t *entry,
              apr_uint32_t idx)
{
  assert(idx == get_index(cache, entry));
  if (level->next == idx)
    level->next = entry->next;
  if (entry->previous == NO_INDEX)
    level->first = entry->next;
  else
    get_entry(cache, entry->previous)->next = entry->next;
  if (entry->next == NO_INDEX)
    level->last = entry->previous;
  else
    get_entry(cache, entry->next)->previous = entry->previous;
}
static void unchain_entry ( svn_membuffer_t * cache , cache_level_t * level , entry_t * entry , apr_uint32_t idx ) { assert ( idx == get_index ( cache , entry ) ) ; if ( level -> next == idx ) level -> next = entry -> next ; if ( entry -> previous == NO_INDEX ) level -> first = entry -> next ; else get_entry ( cache , entry -> previous ) -> next = entry -> next ; if ( entry -> next == NO_INDEX ) level -> last = entry -> previous ; else get_entry ( cache , entry -> next ) -> previous = entry -> previous ; }
Remove ENTRY from the chain of items that belong to LEVEL in CACHE.
Remove ENTRY from the chain of items that belong to LEVEL in CACHE .
/* update
   */ /* unlink it from the chain of used entries
   */