Author: danielsh
Date: Sat Sep 8 17:33:07 2012
New Revision: 1382333
URL: http://svn.apache.org/viewvc?rev=1382333&view=rev
Log:
Follow-up to r1381808: move logic around. No externally-visible change.
* subversion/libsvn_fs_fs/fs_fs.h
(svn_fs_fs__read_noderev): Remove ALLOW_FOR_TXN_ROOTS parameter.
* subversion/libsvn_fs_fs/fs_fs.c
(svn_fs_fs__read_noderev): Implement signature change.
(get_node_revision_body): Track signature change, move workaround here.
Modified:
subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c
subversion/trunk/subversion/libsvn_fs_fs/fs_fs.h
Modified: subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c?rev=1382333&r1=1382332&r2=1382333&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c Sat Sep 8 17:33:07 2012
@@ -2284,8 +2284,11 @@ get_node_revision_body(node_revision_t *
SVN_ERR(svn_fs_fs__read_noderev(noderev_p,
svn_stream_from_aprfile2(revision_file,
FALSE,
pool),
- svn_fs_fs__id_txn_id(id) != NULL,
pool));
+ /* Workaround issue #4031: is-fresh-txn-root in revision files. */
+ if (svn_fs_fs__id_txn_id(id) != NULL)
+ (*noderev_p)->is_fresh_txn_root = FALSE;
+
/* The noderev is not in cache, yet. Add it, if caching has been enabled. */
return set_cached_node_revision_body(*noderev_p, fs, id, pool);
@@ -2294,7 +2297,6 @@ get_node_revision_body(node_revision_t *
svn_error_t *
svn_fs_fs__read_noderev(node_revision_t **noderev_p,
svn_stream_t *stream,
- svn_boolean_t allow_for_txn_roots,
apr_pool_t *pool)
{
apr_hash_t *headers;
@@ -2425,9 +2427,7 @@ svn_fs_fs__read_noderev(node_revision_t
}
/* Get whether this is a fresh txn root. */
- value = allow_for_txn_roots
- ? apr_hash_get(headers, HEADER_FRESHTXNRT, APR_HASH_KEY_STRING)
- : NULL;
+ value = apr_hash_get(headers, HEADER_FRESHTXNRT, APR_HASH_KEY_STRING);
noderev->is_fresh_txn_root = (value != NULL);
/* Get the mergeinfo count. */
Modified: subversion/trunk/subversion/libsvn_fs_fs/fs_fs.h
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/fs_fs.h?rev=1382333&r1=1382332&r2=1382333&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/fs_fs.h (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/fs_fs.h Sat Sep 8 17:33:07 2012
@@ -94,13 +94,11 @@ svn_fs_fs__write_noderev(svn_stream_t *o
apr_pool_t *pool);
/* Read a node-revision from STREAM. Set *NODEREV to the new structure,
- allocated in POOL. If ALLOW_FOR_TXN_ROOTS is FALSE, the is-fresh-txn-root
- flag will be ignored. */
+ allocated in POOL. */
/* ### Currently used only by fs_fs.c */
svn_error_t *
svn_fs_fs__read_noderev(node_revision_t **noderev,
svn_stream_t *stream,
- svn_boolean_t allow_for_txn_roots,
apr_pool_t *pool);