You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2017/02/10 11:40:52 UTC

svn commit: r1782453 - /subversion/trunk/subversion/libsvn_client/conflicts.c

Author: stsp
Date: Fri Feb 10 11:40:51 2017
New Revision: 1782453

URL: http://svn.apache.org/viewvc?rev=1782453&view=rev
Log:
Avoid an unneccessary new RA session in the resolver.

* subversion/libsvn_client/conflicts.c
  (find_yca): Add ra_session paramater which can be NULL (same semantics as
    svn_client__get_youngest_common_ancestor() it is passed to).
  (find_deleted_rev): Pass the existing extra RA session to find_yca().
  (resolve_incoming_move_dir_merge): Pass a NULL RA session to find_yca().

Modified:
    subversion/trunk/subversion/libsvn_client/conflicts.c

Modified: subversion/trunk/subversion/libsvn_client/conflicts.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/conflicts.c?rev=1782453&r1=1782452&r2=1782453&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/conflicts.c (original)
+++ subversion/trunk/subversion/libsvn_client/conflicts.c Fri Feb 10 11:40:51 2017
@@ -547,6 +547,7 @@ find_yca(svn_client__pathrev_t **yca_loc
          svn_revnum_t peg_rev2,
          const char *repos_root_url,
          const char *repos_uuid,
+         svn_ra_session_t *ra_session,
          svn_client_ctx_t *ctx,
          apr_pool_t *result_pool,
          apr_pool_t *scratch_pool)
@@ -562,9 +563,9 @@ find_yca(svn_client__pathrev_t **yca_loc
   loc2 = svn_client__pathrev_create_with_relpath(repos_root_url, repos_uuid,
                                                  peg_rev2, repos_relpath2,
                                                  scratch_pool);
-  SVN_ERR(svn_client__get_youngest_common_ancestor(yca_loc, loc1, loc2, NULL,
-                                                   ctx, result_pool,
-                                                   scratch_pool));
+  SVN_ERR(svn_client__get_youngest_common_ancestor(yca_loc, loc1, loc2,
+                                                   ra_session, ctx,
+                                                   result_pool, scratch_pool));
 
   return SVN_NO_ERROR;
 }
@@ -807,7 +808,7 @@ find_deleted_rev(void *baton,
                              b->deleted_repos_relpath,
                              rev_below(log_entry->revision),
                              b->repos_root_url, b->repos_uuid,
-                             b->ctx, iterpool, iterpool);
+                             b->extra_ra_session, b->ctx, iterpool, iterpool);
               if (err)
                 {
                   /* ### Happens for moves within other moves and copies. */
@@ -7994,7 +7995,7 @@ resolve_incoming_move_dir_merge(svn_clie
   err = find_yca(&yca_loc, victim_repos_relpath, victim_peg_rev,
                  moved_to_repos_relpath, moved_to_peg_rev,
                  repos_root_url, repos_uuid,
-                 ctx, scratch_pool, scratch_pool);
+                 NULL, ctx, scratch_pool, scratch_pool);
   if (err)
     goto unlock_wc;