Can someone check this doc clarification for me? The condition that @a local_abspath must be a versioned directory if @a lock_anchor is false was hidden away in a sub-condition. This promotes it to an unconditional condition. :-)
[[[ Index: subversion/include/private/svn_wc_private.h =================================================================== --- subversion/include/private/svn_wc_private.h (revision 1033064) +++ subversion/include/private/svn_wc_private.h (working copy) @@ -614,18 +614,18 @@ /** - * Acquire a recursive write lock for @a local_abspath or if @a lock_anchor + * Acquire a recursive write lock for @a local_abspath. If @a lock_anchor * is true, determine if @a local_abspath has an anchor that should be locked - * instead. Store the obtained lock in @a wc_ctx. + * instead; otherwise, @a local_abspath must be a versioned directory. + * Store the obtained lock in @a wc_ctx. * * If @a lock_root_abspath is not NULL, store the root of the lock in * @a *lock_root_abspath. If @a lock_root_abspath is NULL, then @a - * local_abspath must be a versioned directory and @a lock_anchor must be - * FALSE. + * @a lock_anchor must be FALSE. * * Returns @c SVN_ERR_WC_LOCKED if an existing lock is encountered, in * which case any locks acquired will have been released. * * If @a lock_anchor is TRUE and @a lock_root_abspath is not NULL, @a * lock_root_abspath will be set even when SVN_ERR_WC_LOCKED is returned. */ svn_error_t * svn_wc__acquire_write_lock(const char **lock_root_abspath, ]]] - Julian