Author: stefan2
Date: Tue Sep 24 21:17:25 2013
New Revision: 1526014
URL: http://svn.apache.org/r1526014
Log:
Fix a few incomplete condition that did not handle all new move types.
* subversion/libsvn_fs_fs/transaction.c
(fold_change): Fix a add / move asymmetry
(write_final_changed_path_info): check for all types of moves
Modified:
subversion/trunk/subversion/libsvn_fs_fs/transaction.c
Modified: subversion/trunk/subversion/libsvn_fs_fs/transaction.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/transaction.c?rev=1526014&r1=1526013&r2=1526014&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/transaction.c (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/transaction.c Tue Sep 24 21:17:25
2013
@@ -677,7 +677,8 @@ fold_change(apr_hash_t *changes,
/* Sanity check: an add can't follow anything except
a delete or reset. */
- if ((info->change_kind == svn_fs_path_change_add)
+ if (( (info->change_kind == svn_fs_path_change_add)
+ || (info->change_kind == svn_fs_path_change_move))
&& (old_change->change_kind != svn_fs_path_change_delete)
&& (old_change->change_kind != svn_fs_path_change_reset))
return svn_error_create
@@ -2710,7 +2711,8 @@ write_final_changed_path_info(apr_off_t
svn_fs_path_change2_t *change;
apr_hash_this(hi, NULL, NULL, (void **)&change);
- if (change->change_kind == svn_fs_path_change_move)
+ if ( (change->change_kind == svn_fs_path_change_move)
+ || (change->change_kind == svn_fs_path_change_movereplace))
change->copyfrom_rev = new_rev - 1;
}