summaryrefslogtreecommitdiff
path: root/subversion/libsvn_client/relocate.c
diff options
context:
space:
mode:
Diffstat (limited to 'subversion/libsvn_client/relocate.c')
-rw-r--r--subversion/libsvn_client/relocate.c34
1 files changed, 14 insertions, 20 deletions
diff --git a/subversion/libsvn_client/relocate.c b/subversion/libsvn_client/relocate.c
index 8ff5e03..ed8d09c 100644
--- a/subversion/libsvn_client/relocate.c
+++ b/subversion/libsvn_client/relocate.c
@@ -100,13 +100,13 @@ validator_func(void *baton,
if (! url_uuid)
{
apr_pool_t *sesspool = svn_pool_create(pool);
- svn_ra_session_t *ra_session;
- SVN_ERR(svn_client__open_ra_session_internal(&ra_session, NULL, url, NULL,
- NULL, FALSE, TRUE,
- b->ctx, sesspool));
+
url_uuid = &APR_ARRAY_PUSH(uuids, struct url_uuid_t);
- SVN_ERR(svn_ra_get_uuid2(ra_session, &(url_uuid->uuid), pool));
- SVN_ERR(svn_ra_get_repos_root2(ra_session, &(url_uuid->root), pool));
+ SVN_ERR(svn_client_get_repos_root(&url_uuid->root,
+ &url_uuid->uuid,
+ url, b->ctx,
+ pool, sesspool));
+
svn_pool_destroy(sesspool);
}
@@ -139,17 +139,12 @@ relocate_externals(const char *local_abspath,
apr_array_header_t *ext_desc,
const char *old_parent_repos_root_url,
const char *new_parent_repos_root_url,
- svn_boolean_t ignore_externals,
svn_client_ctx_t *ctx,
apr_pool_t *scratch_pool)
{
- const char *url;
apr_pool_t *iterpool;
int i;
- SVN_ERR(svn_client_url_from_path2(&url, local_abspath, ctx,
- scratch_pool, scratch_pool));
-
/* Parse an externals definition into an array of external items. */
iterpool = svn_pool_create(scratch_pool);
@@ -185,8 +180,8 @@ relocate_externals(const char *local_abspath,
ext_item->target_dir,
iterpool),
iterpool));
- err = svn_client_root_url_from_path(&target_repos_root_url,
- target_abspath, ctx, iterpool);
+ err = svn_client_get_repos_root(&target_repos_root_url, NULL /* uuid */,
+ target_abspath, ctx, iterpool, iterpool);
/* Ignore externals that aren't present in the working copy.
* This can happen if an external is deleted from disk accidentally,
@@ -203,7 +198,7 @@ relocate_externals(const char *local_abspath,
SVN_ERR(svn_client_relocate2(target_abspath,
old_parent_repos_root_url,
new_parent_repos_root_url,
- ignore_externals, ctx, iterpool));
+ FALSE, ctx, iterpool));
}
svn_pool_destroy(iterpool);
@@ -248,16 +243,16 @@ svn_client_relocate2(const char *wcroot_dir,
}
/* Fetch our current root URL. */
- SVN_ERR(svn_client_root_url_from_path(&old_repos_root_url, local_abspath,
- ctx, pool));
+ SVN_ERR(svn_client_get_repos_root(&old_repos_root_url, NULL /* uuid */,
+ local_abspath, ctx, pool, pool));
/* Perform the relocation. */
SVN_ERR(svn_wc_relocate4(ctx->wc_ctx, local_abspath, from_prefix, to_prefix,
validator_func, &vb, pool));
/* Now fetch new current root URL. */
- SVN_ERR(svn_client_root_url_from_path(&new_repos_root_url, local_abspath,
- ctx, pool));
+ SVN_ERR(svn_client_get_repos_root(&new_repos_root_url, NULL /* uuid */,
+ local_abspath, ctx, pool, pool));
/* Relocate externals, too (if any). */
@@ -285,8 +280,7 @@ svn_client_relocate2(const char *wcroot_dir,
iterpool));
if (ext_desc->nelts)
SVN_ERR(relocate_externals(this_abspath, ext_desc, old_repos_root_url,
- new_repos_root_url, ignore_externals, ctx,
- iterpool));
+ new_repos_root_url, ctx, iterpool));
}
svn_pool_destroy(iterpool);