You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2014/12/24 10:55:56 UTC
svn commit: r1647756 - in
/subversion/branches/fsx-id/subversion/libsvn_fs_x: cached_data.c id.c id.h
transaction.c
Author: stefan2
Date: Wed Dec 24 09:55:55 2014
New Revision: 1647756
URL: http://svn.apache.org/r1647756
Log:
On the fsx-id branch: Introduce ID utility functions that create / init
transaction and revision root noderev IDs. Use them where appropriate.
* subversion/libsvn_fs_x/id.h
(svn_fs_x__init_txn_root,
svn_fs_x__init_rev_root): Declare the new functions.
* subversion/libsvn_fs_x/id.c
(svn_fs_x__init_txn_root,
svn_fs_x__init_rev_root): Implement them.
* subversion/libsvn_fs_x/cached_data.c
(svn_fs_x__rev_get_root): Call on of the new functions.
* subversion/libsvn_fs_x/transaction.c
(create_new_txn_noderev_from_rev): Same.
Modified:
subversion/branches/fsx-id/subversion/libsvn_fs_x/cached_data.c
subversion/branches/fsx-id/subversion/libsvn_fs_x/id.c
subversion/branches/fsx-id/subversion/libsvn_fs_x/id.h
subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/cached_data.c
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/cached_data.c?rev=1647756&r1=1647755&r2=1647756&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/cached_data.c (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/cached_data.c Wed Dec 24 09:55:55 2014
@@ -454,9 +454,7 @@ svn_fs_x__rev_get_root(svn_fs_x__id_part
apr_pool_t *scratch_pool)
{
SVN_ERR(svn_fs_x__ensure_revision_exists(rev, fs, scratch_pool));
-
- root_id->change_set = svn_fs_x__change_set_by_rev(rev);
- root_id->number = SVN_FS_X__ITEM_INDEX_ROOT_NODE;
+ svn_fs_x__init_rev_root(root_id, rev);
return SVN_NO_ERROR;
}
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/id.c
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/id.c?rev=1647756&r1=1647755&r2=1647756&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/id.c (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/id.c Wed Dec 24 09:55:55 2014
@@ -185,6 +185,22 @@ svn_fs_x__id_part_used(const svn_fs_x__i
return part->change_set != SVN_FS_X__INVALID_CHANGE_SET;
}
+void
+svn_fs_x__init_txn_root(svn_fs_x__noderev_id_t *noderev_id,
+ svn_fs_x__txn_id_t txn_id)
+{
+ noderev_id->change_set = svn_fs_x__change_set_by_txn(txn_id);
+ noderev_id->number = SVN_FS_X__ITEM_INDEX_ROOT_NODE;
+}
+
+void
+svn_fs_x__init_rev_root(svn_fs_x__noderev_id_t *noderev_id,
+ svn_revnum_t rev)
+{
+ noderev_id->change_set = svn_fs_x__change_set_by_rev(rev);
+ noderev_id->number = SVN_FS_X__ITEM_INDEX_ROOT_NODE;
+}
+
/* Accessing ID Pieces. */
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/id.h
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/id.h?rev=1647756&r1=1647755&r2=1647756&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/id.h (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/id.h Wed Dec 24 09:55:55 2014
@@ -107,6 +107,16 @@ void svn_fs_x__id_part_reset(svn_fs_x__i
/* Return TRUE if *PART is belongs to either a revision or transaction. */
svn_boolean_t svn_fs_x__id_part_used(const svn_fs_x__id_part_t *part);
+/* Set *NODEREV_ID to the root node ID of transaction TXN_ID. */
+void
+svn_fs_x__init_txn_root(svn_fs_x__noderev_id_t *noderev_id,
+ svn_fs_x__txn_id_t txn_id);
+
+/* Set *NODEREV_ID to the root node ID of revision REV. */
+void
+svn_fs_x__init_rev_root(svn_fs_x__noderev_id_t *noderev_id,
+ svn_revnum_t rev);
+
/*** ID accessor functions. ***/
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c?rev=1647756&r1=1647755&r2=1647756&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c Wed Dec 24 09:55:55 2014
@@ -1173,9 +1173,7 @@ create_new_txn_noderev_from_rev(svn_fs_t
noderev->copyfrom_rev = SVN_INVALID_REVNUM;
/* For the transaction root, the copyroot never changes. */
-
- noderev->noderev_id.change_set = svn_fs_x__change_set_by_txn(txn_id);
- noderev->noderev_id.number = SVN_FS_X__ITEM_INDEX_ROOT_NODE;
+ svn_fs_x__init_txn_root(&noderev->noderev_id, txn_id);
return svn_fs_x__put_node_revision(fs, noderev, TRUE, pool);
}