Author: stsp Date: Fri Jan 29 14:56:32 2016 New Revision: 1727596 URL: http://svn.apache.org/viewvc?rev=1727596&view=rev Log: Follow-up to r1727593, which broke some tests:
Fix errors in handling the --accept option and postponed conflicts. * subversion/svn/conflict-callbacks.c (handle_text_conflict, handle_prop_conflicts, handle_tree_conflict): Do not call mark_conflict_resolved() if the conflict should be postponed. (resolve_conflict_interactively): Same, and also do not start interactive resolution if the --accept option postponed the conflict. Modified: subversion/trunk/subversion/svn/conflict-callbacks.c Modified: subversion/trunk/subversion/svn/conflict-callbacks.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/conflict-callbacks.c?rev=1727596&r1=1727595&r2=1727596&view=diff ============================================================================== --- subversion/trunk/subversion/svn/conflict-callbacks.c (original) +++ subversion/trunk/subversion/svn/conflict-callbacks.c Fri Jan 29 14:56:32 2016 @@ -1063,7 +1063,8 @@ handle_text_conflict(svn_boolean_t *reso } svn_pool_destroy(iterpool); - if (option_id != svn_client_conflict_option_undefined) + if (option_id != svn_client_conflict_option_undefined && + option_id != svn_client_conflict_option_postpone) { SVN_ERR(mark_conflict_resolved(conflict, option_id, TRUE, NULL, FALSE, @@ -1295,7 +1296,8 @@ handle_prop_conflicts(svn_boolean_t *res editor_cmd, config, conflict, propname, iterpool, iterpool)); - if (option_id != svn_client_conflict_option_undefined) + if (option_id != svn_client_conflict_option_undefined && + option_id != svn_client_conflict_option_postpone) { SVN_ERR(mark_conflict_resolved(conflict, option_id, FALSE, propname, FALSE, @@ -1462,7 +1464,8 @@ handle_tree_conflict(svn_boolean_t *reso } } svn_pool_destroy(iterpool); - if (option_id != svn_client_conflict_option_undefined) + if (option_id != svn_client_conflict_option_undefined && + option_id != svn_client_conflict_option_postpone) { SVN_ERR(mark_conflict_resolved(conflict, option_id, FALSE, NULL, TRUE, @@ -1623,7 +1626,8 @@ resolve_conflict_interactively(svn_boole break; } - if (option_id != svn_client_conflict_option_undefined) + if (option_id != svn_client_conflict_option_undefined && + option_id != svn_client_conflict_option_postpone) { /* Resolve the conflict as per --accept option. */ SVN_ERR(mark_conflict_resolved(conflict, option_id, @@ -1636,6 +1640,12 @@ resolve_conflict_interactively(svn_boole return SVN_NO_ERROR; } + if (option_id == svn_client_conflict_option_postpone) + { + *resolved = FALSE; + return SVN_NO_ERROR; + } + /* Print a summary of conflicts before starting interactive resolution */ if (! *printed_summary) {