summaryrefslogtreecommitdiffstats
path: root/subversion/libsvn_wc/wc_db.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2014-02-20 19:26:10 +0000
committerpeter <peter@FreeBSD.org>2014-02-20 19:26:10 +0000
commitb168ae828108b6f3a7d68ace24b6e8383a081fb5 (patch)
treee6232088e2faabbf0f1a6e568df3285323f27c5c /subversion/libsvn_wc/wc_db.c
parentd071fadd4866ee3cac65d15a4f6283a75939137d (diff)
downloadFreeBSD-src-b168ae828108b6f3a7d68ace24b6e8383a081fb5.zip
FreeBSD-src-b168ae828108b6f3a7d68ace24b6e8383a081fb5.tar.gz
Vendor import svn-1.8.8
Diffstat (limited to 'subversion/libsvn_wc/wc_db.c')
-rw-r--r--subversion/libsvn_wc/wc_db.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/subversion/libsvn_wc/wc_db.c b/subversion/libsvn_wc/wc_db.c
index 8b024c2..7d038cf 100644
--- a/subversion/libsvn_wc/wc_db.c
+++ b/subversion/libsvn_wc/wc_db.c
@@ -1390,6 +1390,15 @@ does_node_exist(svn_boolean_t *exists,
return svn_error_trace(svn_sqlite__reset(stmt));
}
+svn_error_t *
+svn_wc__db_install_schema_statistics(svn_sqlite__db_t *sdb,
+ apr_pool_t *scratch_pool)
+{
+ SVN_ERR(svn_sqlite__exec_statements(sdb, STMT_INSTALL_SCHEMA_STATISTICS));
+
+ return SVN_NO_ERROR;
+}
+
/* Helper for create_db(). Initializes our wc.db schema.
*/
static svn_error_t *
@@ -1417,6 +1426,8 @@ init_db(/* output values */
SVN_ERR(create_repos_id(repos_id, repos_root_url, repos_uuid,
db, scratch_pool));
+ SVN_ERR(svn_wc__db_install_schema_statistics(db, scratch_pool));
+
/* Insert the wcroot. */
/* ### Right now, this just assumes wc metadata is being stored locally. */
SVN_ERR(svn_sqlite__get_statement(&stmt, db, STMT_INSERT_WCROOT));
@@ -4551,6 +4562,21 @@ db_op_copy(svn_wc__db_wcroot_t *src_wcroot,
}
else
{
+ if (copyfrom_relpath)
+ {
+ const char *repos_root_url;
+ const char *repos_uuid;
+
+ /* Pass the right repos-id for the destination db! */
+
+ SVN_ERR(svn_wc__db_fetch_repos_info(&repos_root_url, &repos_uuid,
+ src_wcroot->sdb, copyfrom_id,
+ scratch_pool));
+
+ SVN_ERR(create_repos_id(&copyfrom_id, repos_root_url, repos_uuid,
+ dst_wcroot->sdb, scratch_pool));
+ }
+
SVN_ERR(cross_db_copy(src_wcroot, src_relpath, dst_wcroot,
dst_relpath, dst_presence, dst_op_depth,
dst_np_op_depth, kind,
OpenPOWER on IntegriCloud