Index: subversion/libsvn_fs_base/fs.c =================================================================== --- subversion/libsvn_fs_base/fs.c (revision 24495) +++ subversion/libsvn_fs_base/fs.c (working copy) @@ -58,6 +58,7 @@ #include "../libsvn_fs/fs-loader.h" #include "private/svn_fs_merge_info.h" +#include "private/svn_fs_util.h" /* Checking for return values, and reporting errors. */ @@ -98,19 +99,6 @@ return SVN_NO_ERROR; } - -/* If FS is already open, then return an SVN_ERR_FS_ALREADY_OPEN - error. Otherwise, return zero. */ -static svn_error_t * -check_already_open(svn_fs_t *fs) -{ - if (fs->fsap_data) - return svn_error_create(SVN_ERR_FS_ALREADY_OPEN, 0, - _("Filesystem object already open")); - else - return SVN_NO_ERROR; -} - /* Cleanup functions. */ @@ -515,7 +503,7 @@ { base_fs_data_t *bfd; - SVN_ERR(check_already_open(fs)); + SVN_ERR(svn_fs__check_already_open(fs)); bfd = apr_pcalloc(fs->pool, sizeof(*bfd)); fs->vtable = &fs_vtable; Index: subversion/libsvn_fs_fs/fs.c =================================================================== --- subversion/libsvn_fs_fs/fs.c (revision 24495) +++ subversion/libsvn_fs_fs/fs.c (working copy) @@ -36,6 +36,7 @@ #include "svn_private_config.h" #include "../libsvn_fs/fs-loader.h" +#include "private/svn_fs_util.h" /* A prefix for the pool userdata variables used to hold per-filesystem shared data. See fs_serialized_init. */ @@ -43,21 +44,7 @@ -/* If filesystem FS is already open, then return an - SVN_ERR_FS_ALREADY_OPEN error. Otherwise, return zero. */ static svn_error_t * -check_already_open(svn_fs_t *fs) -{ - if (fs->fsap_data) - return svn_error_create(SVN_ERR_FS_ALREADY_OPEN, 0, - _("Filesystem object already open")); - else - return SVN_NO_ERROR; -} - - - -static svn_error_t * fs_serialized_init(svn_fs_t *fs, apr_pool_t *common_pool, apr_pool_t *pool) { fs_fs_data_t *ffd = fs->fsap_data; @@ -172,7 +159,7 @@ { fs_fs_data_t *ffd; - SVN_ERR(check_already_open(fs)); + SVN_ERR(svn_fs__check_already_open(fs)); ffd = apr_pcalloc(fs->pool, sizeof(*ffd)); fs->vtable = &fs_vtable; Index: subversion/libsvn_fs_util/fs-util.c =================================================================== --- subversion/libsvn_fs_util/fs-util.c (revision 24495) +++ subversion/libsvn_fs_util/fs-util.c (working copy) @@ -21,8 +21,12 @@ #include #include +#include "svn_fs.h" #include "svn_path.h" +#include "svn_private_config.h" + #include "private/svn_fs_util.h" +#include "../libsvn_fs/fs-loader.h" const char * svn_fs__canonicalize_abspath(const char *path, apr_pool_t *pool) @@ -82,3 +86,13 @@ return newpath; } +svn_error_t * +svn_fs__check_already_open(svn_fs_t *fs) +{ + if (fs->path) + return svn_error_create(SVN_ERR_FS_ALREADY_OPEN, 0, + _("Filesystem object already open")); + else + return SVN_NO_ERROR; +} + Index: subversion/include/private/svn_fs_util.h =================================================================== --- subversion/include/private/svn_fs_util.h (revision 24495) +++ subversion/include/private/svn_fs_util.h (working copy) @@ -35,6 +35,11 @@ const char * svn_fs__canonicalize_abspath(const char *path, apr_pool_t *pool); +/* If filesystem is already open, then return an + SVN_ERR_FS_ALREADY_OPEN error. Otherwise, return zero. */ +svn_error_t * +svn_fs__check_already_open(svn_fs_t *fs); + #ifdef __cplusplus } #endif /* __cplusplus */