On Wed, Feb 08, 2017 at 12:30:03AM +0300, Evgeny Kotkov wrote: > I think that the actual problem here is that calling the > svn_client_conflict_option_set_moved_to_repos_relpath() function > does not update the description (and the target path in the description > could have changed). > > In other words, probably we're looking at something along these lines:
Ah, indeed. Thank you very much for this patch! Please commit it when you get a chance. Thanks, Stefan > [[[ > Index: subversion/include/svn_client.h > =================================================================== > --- subversion/include/svn_client.h (revision 1782081) > +++ subversion/include/svn_client.h (working copy) > @@ -4495,6 +4495,7 @@ svn_error_t * > svn_client_conflict_option_set_moved_to_repos_relpath( > svn_client_conflict_option_t *option, > int preferred_move_target_idx, > + svn_client_ctx_t *ctx, > apr_pool_t *scratch_pool); > > /** > Index: subversion/libsvn_client/conflicts.c > =================================================================== > --- subversion/libsvn_client/conflicts.c (revision 1782081) > +++ subversion/libsvn_client/conflicts.c (working copy) > @@ -9414,6 +9414,7 @@ svn_error_t * > svn_client_conflict_option_set_moved_to_repos_relpath( > svn_client_conflict_option_t *option, > int preferred_move_target_idx, > + svn_client_ctx_t *ctx, > apr_pool_t *scratch_pool) > { > svn_client_conflict_t *conflict = option->conflict; > @@ -9466,6 +9467,14 @@ svn_client_conflict_option_set_moved_to_repos_relp > if (strcmp(move_target_repos_relpath, repos_relpath) == 0) > { > details->move_target_repos_relpath = repos_relpath; > + /* Update option description. */ > + SVN_ERR(describe_incoming_move_merge_conflict_option( > + &option->description, > + conflict, ctx, > + details, > + conflict->pool, > + scratch_pool)); > + > return SVN_NO_ERROR; > } > } > Index: subversion/svn/conflict-callbacks.c > =================================================================== > --- subversion/svn/conflict-callbacks.c (revision 1782081) > +++ subversion/svn/conflict-callbacks.c (working copy) > @@ -1751,16 +1751,9 @@ handle_tree_conflict(svn_boolean_t *resolved, > if (conflict_option) > { > SVN_ERR(svn_client_conflict_option_set_moved_to_repos_relpath( > - conflict_option, preferred_move_target_idx, > iterpool)); > + conflict_option, preferred_move_target_idx, > + ctx, iterpool)); > > - /* Update option description. */ > - SVN_ERR(build_tree_conflict_options( > - &tree_conflict_options, > - &possible_moved_to_repos_relpaths, > - &possible_moved_to_abspaths, > - NULL, conflict, ctx, > - scratch_pool, scratch_pool)); > - > /* Update conflict description. */ > SVN_ERR(svn_client_conflict_tree_get_description( > &incoming_change_description, > &local_change_description, > ]]] > > > Regards, > Evgeny Kotkov