Our abuse of the dump code for verify gets yuckier as time
passes. I'm not going to separate it though, at least not yet.
[[[
Don't print a warning about dump when we're pretending dump is verify.
* subversion/libsvn_repos/dump.c
(struct edit_baton): Add new verify field, indicating whether this is
a verify or not.
(dump_node): Don't warn about an incomplete dump if this is a verify.
(get_dump_editor): Set eb->verify to FALSE.
(svn_repos_verify_fs): Set eb->verify to TRUE.
]]]
Index: subversion/libsvn_repos/dump.c
===================================================================
--- subversion/libsvn_repos/dump.c (revision 29557)
+++ subversion/libsvn_repos/dump.c (working copy)
@@ -185,6 +185,9 @@
/* True if dumped nodes should output deltas instead of full text. */
svn_boolean_t use_deltas;
+ /* True if this "dump" is in fact a verify. */
+ svn_boolean_t verify;
+
/* The first revision dumped in this dumpstream. */
svn_revnum_t oldest_dumped_rev;
@@ -410,7 +413,7 @@
}
else
{
- if (cmp_rev < eb->oldest_dumped_rev)
+ if (!eb->verify && cmp_rev < eb->oldest_dumped_rev)
SVN_ERR(svn_stream_printf
(eb->feedback_stream, pool,
_("WARNING: Referencing data in revision %ld,"
@@ -827,6 +830,7 @@
SVN_ERR(svn_fs_revision_root(&(eb->fs_root), fs, to_rev, pool));
eb->current_rev = to_rev;
eb->use_deltas = use_deltas;
+ eb->verify = FALSE;
/* Set up the editor. */
dump_editor->open_root = open_root;
@@ -1193,7 +1197,7 @@
for (rev = start_rev; rev <= end_rev; rev++)
{
svn_delta_editor_t *dump_editor;
- void *dump_edit_baton;
+ struct edit_baton *dump_edit_baton;
const svn_delta_editor_t *cancel_editor;
void *cancel_edit_baton;
svn_fs_root_t *to_root;
@@ -1202,9 +1206,10 @@
/* Get cancellable dump editor, but with our close_directory handler. */
SVN_ERR(get_dump_editor((const svn_delta_editor_t **)&dump_editor,
- &dump_edit_baton, fs, rev, "",
+ (void *)&dump_edit_baton, fs, rev, "",
svn_stream_empty(pool), feedback_stream,
start_rev, FALSE, iterpool));
+ dump_edit_baton->verify = TRUE;
dump_editor->close_directory = verify_close_directory;
SVN_ERR(svn_delta_get_cancellation_editor(cancel_func, cancel_baton,
dump_editor, dump_edit_baton,
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-02-23 00:14:23 CET