You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2015/10/21 12:57:26 UTC

svn commit: r1709791 - in /subversion/branches/move-tracking-2/subversion: include/private/svn_branch.h libsvn_delta/branch.c libsvn_delta/branch_nested.c libsvn_delta/branch_private.h libsvn_delta/compat3e.c

Author: julianfoad
Date: Wed Oct 21 10:57:26 2015
New Revision: 1709791

URL: http://svn.apache.org/viewvc?rev=1709791&view=rev
Log:
On the 'move-tracking-2' branch: Make branch txn methods return branch state
objects instead of branch ids.

* subversion/include/private/svn_branch.h,
  subversion/libsvn_delta/branch.c
  (branch_txn_open_branch,
   branch_txn_branch,
   svn_branch_txn_open_branch,
   svn_branch_txn_branch): Output a branch state object instead of a branch
    id.

* subversion/libsvn_delta/branch_private.h
  (branch_txn_v_open_branch_t,
   branch_txn_v_branch_t): Same.

* subversion/libsvn_delta/branch_nested.c
  (nested_branch_txn_open_branch,
   nested_branch_txn_branch): Same.

* subversion/libsvn_delta/compat3e.c
  (editor3_open_branch,
   editor3_branch): Adjust callers.

Modified:
    subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h
    subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c
    subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c
    subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h
    subversion/branches/move-tracking-2/subversion/libsvn_delta/compat3e.c

Modified: subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h?rev=1709791&r1=1709790&r2=1709791&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h (original)
+++ subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h Wed Oct 21 10:57:26 2015
@@ -201,7 +201,7 @@ svn_branch_txn_new_eid(svn_branch_txn_t
 
 svn_error_t *
 svn_branch_txn_open_branch(svn_branch_txn_t *txn,
-                           const char **new_branch_id_p,
+                           svn_branch_state_t **new_branch_p,
                            svn_branch_rev_bid_t *predecessor,
                            const char *outer_branch_id,
                            int outer_eid,
@@ -211,7 +211,7 @@ svn_branch_txn_open_branch(svn_branch_tx
 
 svn_error_t *
 svn_branch_txn_branch(svn_branch_txn_t *txn,
-                      const char **new_branch_id_p,
+                      svn_branch_state_t **new_branch_p,
                       svn_branch_rev_bid_eid_t *from,
                       const char *outer_branch_id,
                       int outer_eid,

Modified: subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c?rev=1709791&r1=1709790&r2=1709791&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c Wed Oct 21 10:57:26 2015
@@ -130,7 +130,7 @@ branch_txn_new_eid(svn_branch_txn_t *txn
 /* An #svn_branch_txn_t method. */
 static svn_error_t *
 branch_txn_open_branch(svn_branch_txn_t *txn,
-                       const char **new_branch_id_p,
+                       svn_branch_state_t **new_branch_p,
                        svn_branch_rev_bid_t *predecessor,
                        const char *outer_branch_id,
                        int outer_eid,
@@ -141,7 +141,7 @@ branch_txn_open_branch(svn_branch_txn_t
   const char *new_branch_id;
   svn_branch_state_t *new_branch;
 
-  /* if the subbranch already exists, just return its bid */
+  /* if the subbranch already exists, just return it */
   new_branch_id
     = svn_branch_id_nest(outer_branch_id, outer_eid, result_pool);
   new_branch
@@ -158,15 +158,15 @@ branch_txn_open_branch(svn_branch_txn_t
                                                  root_eid, scratch_pool);
     }
 
-  if (new_branch_id_p)
-    *new_branch_id_p = new_branch_id;
+  if (new_branch_p)
+    *new_branch_p = new_branch;
   return SVN_NO_ERROR;
 }
 
 /* An #svn_branch_txn_t method. */
 static svn_error_t *
 branch_txn_branch(svn_branch_txn_t *txn,
-                  const char **new_branch_id_p,
+                  svn_branch_state_t **new_branch_p,
                   svn_branch_rev_bid_eid_t *from,
                   const char *outer_branch_id,
                   int outer_eid,
@@ -212,8 +212,8 @@ branch_txn_branch(svn_branch_txn_t *txn,
   SVN_ERR(svn_branch_instantiate_elements(new_branch, from_subtree,
                                           scratch_pool));
 
-  if (new_branch_id_p)
-    *new_branch_id_p = new_branch_id;
+  if (new_branch_p)
+    *new_branch_p = new_branch;
   return SVN_NO_ERROR;
 }
 
@@ -256,7 +256,7 @@ svn_branch_txn_new_eid(svn_branch_txn_t
 
 svn_error_t *
 svn_branch_txn_open_branch(svn_branch_txn_t *txn,
-                           const char **new_branch_id_p,
+                           svn_branch_state_t **new_branch_p,
                            svn_branch_rev_bid_t *predecessor,
                            const char *outer_branch_id,
                            int outer_eid,
@@ -265,7 +265,7 @@ svn_branch_txn_open_branch(svn_branch_tx
                            apr_pool_t *scratch_pool)
 {
   SVN_ERR(txn->vtable->open_branch(txn,
-                                   new_branch_id_p,
+                                   new_branch_p,
                                    predecessor, outer_branch_id, outer_eid,
                                    root_eid, result_pool,
                                    txn->vtable->vpriv.scratch_pool));
@@ -275,7 +275,7 @@ svn_branch_txn_open_branch(svn_branch_tx
 
 svn_error_t *
 svn_branch_txn_branch(svn_branch_txn_t *txn,
-                      const char **new_branch_id_p,
+                      svn_branch_state_t **new_branch_p,
                       svn_branch_rev_bid_eid_t *from,
                       const char *outer_branch_id,
                       int outer_eid,
@@ -283,7 +283,7 @@ svn_branch_txn_branch(svn_branch_txn_t *
                       apr_pool_t *scratch_pool)
 {
   SVN_ERR(txn->vtable->branch(txn,
-                              new_branch_id_p,
+                              new_branch_p,
                               from, outer_branch_id, outer_eid, result_pool,
                               txn->vtable->vpriv.scratch_pool));
   svn_pool_clear(txn->vtable->vpriv.scratch_pool);  /* ### assumes no recursion */

Modified: subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c?rev=1709791&r1=1709790&r2=1709791&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c Wed Oct 21 10:57:26 2015
@@ -390,7 +390,7 @@ nested_branch_txn_new_eid(svn_branch_txn
  * An #svn_branch_txn_t method. */
 static svn_error_t *
 nested_branch_txn_open_branch(svn_branch_txn_t *txn,
-                              const char **new_branch_id_p,
+                              svn_branch_state_t **new_branch_p,
                               svn_branch_rev_bid_t *predecessor,
                               const char *outer_branch_id,
                               int outer_eid,
@@ -400,7 +400,7 @@ nested_branch_txn_open_branch(svn_branch
 {
   /* Just forwarding: nothing more is needed. */
   SVN_ERR(svn_branch_txn_open_branch(txn->priv->wrapped_txn,
-                                     new_branch_id_p, predecessor,
+                                     new_branch_p, predecessor,
                                      outer_branch_id, outer_eid, root_eid,
                                      result_pool,
                                      scratch_pool));
@@ -411,20 +411,19 @@ nested_branch_txn_open_branch(svn_branch
  * An #svn_branch_txn_t method. */
 static svn_error_t *
 nested_branch_txn_branch(svn_branch_txn_t *txn,
-                         const char **new_branch_id_p,
+                         svn_branch_state_t **new_branch_p,
                          svn_branch_rev_bid_eid_t *from,
                          const char *outer_branch_id,
                          int outer_eid,
                          apr_pool_t *result_pool,
                          apr_pool_t *scratch_pool)
 {
-  const char *new_branch_id;
   svn_branch_state_t *new_branch;
   svn_branch_state_t *from_branch;
   svn_branch_subtree_t *from_subtree;
 
   SVN_ERR(svn_branch_txn_branch(txn->priv->wrapped_txn,
-                                &new_branch_id, from,
+                                &new_branch, from,
                                 outer_branch_id, outer_eid,
                                 result_pool,
                                 scratch_pool));
@@ -435,14 +434,11 @@ nested_branch_txn_branch(svn_branch_txn_
   SVN_ERR(branch_in_rev_or_txn(&from_branch, from, txn->priv->wrapped_txn,
                                scratch_pool));
   from_subtree = svn_branch_get_subtree(from_branch, from->eid, scratch_pool);
-  new_branch = svn_branch_txn_get_branch_by_id(txn->priv->wrapped_txn,
-                                               new_branch_id,
-                                               scratch_pool);
   SVN_ERR(svn_branch_instantiate_elements_r(new_branch, *from_subtree,
                                             scratch_pool));
 
-  if (new_branch_id_p)
-    *new_branch_id_p = new_branch_id;
+  if (new_branch_p)
+    *new_branch_p = new_branch;
   return SVN_NO_ERROR;
 }
 

Modified: subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h?rev=1709791&r1=1709790&r2=1709791&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h Wed Oct 21 10:57:26 2015
@@ -63,7 +63,7 @@ typedef svn_error_t *(*branch_txn_v_new_
 
 typedef svn_error_t *(*branch_txn_v_open_branch_t)(
   svn_branch_txn_t *txn,
-  const char **new_branch_id_p,
+  svn_branch_state_t **new_branch_p,
   svn_branch_rev_bid_t *predecessor,
   const char *outer_branch_id,
   int outer_eid,
@@ -73,7 +73,7 @@ typedef svn_error_t *(*branch_txn_v_open
 
 typedef svn_error_t *(*branch_txn_v_branch_t)(
   svn_branch_txn_t *txn,
-  const char **new_branch_id_p,
+  svn_branch_state_t **new_branch_p,
   svn_branch_rev_bid_eid_t *from,
   const char *outer_branch_id,
   int outer_eid,

Modified: subversion/branches/move-tracking-2/subversion/libsvn_delta/compat3e.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_delta/compat3e.c?rev=1709791&r1=1709790&r2=1709791&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_delta/compat3e.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_delta/compat3e.c Wed Oct 21 10:57:26 2015
@@ -1152,16 +1152,18 @@ editor3_open_branch(void *baton,
 {
   ev3_from_delta_baton_t *eb = baton;
   svn_branch_txn_t *txn = eb->txn;
+  svn_branch_state_t *new_branch;
 
   txn = svn_nested_branch_txn_create(txn, scratch_pool);
   SVN_ERR(svn_branch_txn_open_branch(txn,
-                                     new_branch_id_p,
+                                     &new_branch,
                                      predecessor,
                                      outer_branch_id,
                                      outer_eid,
                                      root_eid,
                                      result_pool,
                                      scratch_pool));
+  *new_branch_id_p = new_branch->bid;
   return SVN_NO_ERROR;
 }
 
@@ -1177,16 +1179,18 @@ editor3_branch(void *baton,
 {
   ev3_from_delta_baton_t *eb = baton;
   svn_branch_txn_t *txn = eb->txn;
+  svn_branch_state_t *new_branch;
 
   txn = svn_nested_branch_txn_create(txn, scratch_pool);
   SVN_ERR(svn_branch_txn_branch(txn,
-                                new_branch_id_p,
+                                &new_branch,
                                 from,
                                 outer_branch_id,
                                 outer_eid,
                                 result_pool,
                                 scratch_pool));
 
+  *new_branch_id_p = new_branch->bid;
   return SVN_NO_ERROR;
 }