FreeBSD/contrib/subversion/subversion/libsvn_fs_fs/fs_fs.c
/* Return the  baton for the innermost lock of a (potential) lock chain.
   The baton shall take out LOCK_ID from FS and execute BODY with BATON
   while the lock is being held.  Allocate the result in a sub-pool of POOL.
 */
Return the  baton for the innermost lock of a (potential) lock chain.
The baton shall take out LOCK_ID from FS and execute BODY with BATON
while the lock is being held.  Allocate the result in a sub-pool of POOL.
Return the baton for the innermost lock of a ( potential ) lock chain . The baton shall take out LOCK_ID from FS and execute BODY with BATON while the lock is being held . Allocate the result in a sub - pool of POOL .
static with_lock_baton_t *
create_lock_baton(svn_fs_t *fs,
                  lock_id_t lock_id,
                  svn_error_t *(*body)(void *baton,
                                       apr_pool_t *pool),
                  void *baton,
                  apr_pool_t *pool)
{
  apr_pool_t *lock_pool = svn_pool_create(pool);
  with_lock_baton_t *result = apr_pcalloc(lock_pool, sizeof(*result));
  result->fs = fs;
  result->body = body;
  result->baton = baton;
  result->lock_pool = lock_pool;
  result->is_inner_most_lock = TRUE;
  result->is_outer_most_lock = TRUE;
  init_lock_baton(result, lock_id);
  return result;
}
static with_lock_baton_t * create_lock_baton ( svn_fs_t * fs , lock_id_t lock_id , svn_error_t * ( * body ) ( void * baton , apr_pool_t * pool ) , void * baton , apr_pool_t * pool ) { apr_pool_t * lock_pool = svn_pool_create ( pool ) ; with_lock_baton_t * result = apr_pcalloc ( lock_pool , sizeof ( * result ) ) ; result -> fs = fs ; result -> body = body ; result -> baton = baton ; result -> lock_pool = lock_pool ; result -> is_inner_most_lock = TRUE ; result -> is_outer_most_lock = TRUE ; init_lock_baton ( result , lock_id ) ; return result ; }
Return the  baton for the innermost lock of a (potential) lock chain.
Return the baton for the innermost lock of a ( potential ) lock chain .
/* Allocate everything along the lock chain into a single sub-pool.
     This minimizes memory usage and cleanup overhead. */ /* Store parameters. */ /* File locks etc. will use this pool as well for easy cleanup. */ /* Right now, we are the first, (only, ) and last struct in the chain. */ /* Select mutex and lock file path depending on LOCK_ID.
     Also, initialize dependent members (IS_GLOBAL_LOCK only, ATM). */