You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by da...@apache.org on 2011/01/26 03:39:56 UTC
svn commit: r1063573 - /subversion/trunk/subversion/libsvn_repos/replay.c
Author: danielsh
Date: Wed Jan 26 02:39:55 2011
New Revision: 1063573
URL: http://svn.apache.org/viewvc?rev=1063573&view=rev
Log:
Fix the second part of issue #3641.
Note: this passes tests, but in pre-commit review I suspect the new 'if'
could be improved, so please review.
* subversion/libsvn_repos/replay.c
(add_subdir):
Don't call add_subdir() when there is no history to convert
to a history-less add. (Thanks, docstrings.)
Modified:
subversion/trunk/subversion/libsvn_repos/replay.c
Modified: subversion/trunk/subversion/libsvn_repos/replay.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_repos/replay.c?rev=1063573&r1=1063572&r2=1063573&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_repos/replay.c (original)
+++ subversion/trunk/subversion/libsvn_repos/replay.c Wed Jan 26 02:39:55 2011
@@ -269,11 +269,21 @@ add_subdir(svn_fs_root_t *source_root,
* I think not; when path_driver_cb_func() calls add_subdir(), it
* passes SOURCE_ROOT and SOURCE_PATH that are unreadable.
*/
- SVN_ERR(add_subdir(new_source_root, target_root, editor, edit_baton,
- new_path, *dir_baton,
- new_source_path,
- authz_read_func, authz_read_baton,
- changed_paths, subpool, &new_dir_baton));
+ if (change && change->change_kind == svn_fs_path_change_replace
+ && copyfrom_path == NULL)
+ {
+ SVN_ERR(editor->add_directory(new_path, *dir_baton,
+ NULL, SVN_INVALID_REVNUM,
+ subpool, &new_dir_baton));
+ }
+ else
+ {
+ SVN_ERR(add_subdir(new_source_root, target_root, editor, edit_baton,
+ new_path, *dir_baton,
+ new_source_path,
+ authz_read_func, authz_read_baton,
+ changed_paths, subpool, &new_dir_baton));
+ }
SVN_ERR(editor->close_directory(new_dir_baton, subpool));
}