Author: svn-role Date: Wed Dec 4 04:00:21 2019 New Revision: 1870785 URL: http://svn.apache.org/viewvc?rev=1870785&view=rev Log: Merge r1853450 from trunk:
* r1853450 Enable 'incoming_move_file_merge' option only if local change is file edit. Justification: Conflict resolver misbehaves when it runs into move vs move conflicts. Votes: +1: stsp, rhuijben, jamessan Modified: subversion/branches/1.11.x/ (props changed) subversion/branches/1.11.x/STATUS subversion/branches/1.11.x/subversion/libsvn_client/conflicts.c Propchange: subversion/branches/1.11.x/ ------------------------------------------------------------------------------ Merged /subversion/trunk:r1853450 Modified: subversion/branches/1.11.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.11.x/STATUS?rev=1870785&r1=1870784&r2=1870785&view=diff ============================================================================== --- subversion/branches/1.11.x/STATUS (original) +++ subversion/branches/1.11.x/STATUS Wed Dec 4 04:00:21 2019 @@ -55,10 +55,3 @@ Veto-blocked changes: Approved changes: ================= - - * r1853450 - Enable 'incoming_move_file_merge' option only if local change is file edit. - Justification: - Conflict resolver misbehaves when it runs into move vs move conflicts. - Votes: - +1: stsp, rhuijben, jamessan Modified: subversion/branches/1.11.x/subversion/libsvn_client/conflicts.c URL: http://svn.apache.org/viewvc/subversion/branches/1.11.x/subversion/libsvn_client/conflicts.c?rev=1870785&r1=1870784&r2=1870785&view=diff ============================================================================== --- subversion/branches/1.11.x/subversion/libsvn_client/conflicts.c (original) +++ subversion/branches/1.11.x/subversion/libsvn_client/conflicts.c Wed Dec 4 04:00:21 2019 @@ -10306,6 +10306,7 @@ configure_option_incoming_move_file_merg { svn_node_kind_t victim_node_kind; svn_wc_conflict_action_t incoming_change; + svn_wc_conflict_reason_t local_change; const char *incoming_old_repos_relpath; svn_revnum_t incoming_old_pegrev; svn_node_kind_t incoming_old_kind; @@ -10313,6 +10314,7 @@ configure_option_incoming_move_file_merg svn_revnum_t incoming_new_pegrev; svn_node_kind_t incoming_new_kind; incoming_change = svn_client_conflict_get_incoming_change(conflict); + local_change = svn_client_conflict_get_local_change(conflict); victim_node_kind = svn_client_conflict_tree_get_victim_node_kind(conflict); SVN_ERR(svn_client_conflict_get_incoming_old_repos_location( &incoming_old_repos_relpath, &incoming_old_pegrev, @@ -10326,7 +10328,8 @@ configure_option_incoming_move_file_merg if (victim_node_kind == svn_node_file && incoming_old_kind == svn_node_file && incoming_new_kind == svn_node_none && - incoming_change == svn_wc_conflict_action_delete) + incoming_change == svn_wc_conflict_action_delete && + local_change == svn_wc_conflict_reason_edited) { struct conflict_tree_incoming_delete_details *details; const char *description;