diff options
author | Peter Wemm <peter@FreeBSD.org> | 2014-02-20 19:26:10 +0000 |
---|---|---|
committer | Peter Wemm <peter@FreeBSD.org> | 2014-02-20 19:26:10 +0000 |
commit | 219f5ebf8fca3572d8d4265d78d0e4670ca35a27 (patch) | |
tree | e6232088e2faabbf0f1a6e568df3285323f27c5c /subversion/libsvn_wc/wc_db.c | |
parent | eeb88685bfa4ef1c0639f1136d83ff19de1b4595 (diff) |
Notes
Diffstat (limited to 'subversion/libsvn_wc/wc_db.c')
-rw-r--r-- | subversion/libsvn_wc/wc_db.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/subversion/libsvn_wc/wc_db.c b/subversion/libsvn_wc/wc_db.c index 8b024c2f18eb4..7d038cf57fb3d 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(©from_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, |