You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by sv...@apache.org on 2014/01/26 05:04:29 UTC

svn commit: r1561441 - in /subversion/branches/1.7.x: ./ STATUS subversion/libsvn_wc/wc_db.c

Author: svn-role
Date: Sun Jan 26 04:04:29 2014
New Revision: 1561441

URL: http://svn.apache.org/r1561441
Log:
Merge r1560690 from trunk:

 * r1560690
   Fix repository-WC copies into relocated working copies and some wc-wc
   copy problems.
   Justifiation:
     It should be impossible to break a working copy by just copying something
     into it.
   Notes:
     r1560701 is a regression test for this problem, but can't be backported
     without resolving a minor text conflict.
   Votes:
     +1: rhuijben, brane, stefan2

Modified:
    subversion/branches/1.7.x/   (props changed)
    subversion/branches/1.7.x/STATUS
    subversion/branches/1.7.x/subversion/libsvn_wc/wc_db.c

Propchange: subversion/branches/1.7.x/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1560690

Modified: subversion/branches/1.7.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.7.x/STATUS?rev=1561441&r1=1561440&r2=1561441&view=diff
==============================================================================
--- subversion/branches/1.7.x/STATUS (original)
+++ subversion/branches/1.7.x/STATUS Sun Jan 26 04:04:29 2014
@@ -118,15 +118,3 @@ Veto-blocked changes:
 Approved changes:
 =================
 
- * r1560690
-   Fix repository-WC copies into relocated working copies and some wc-wc
-   copy problems.
-   Justifiation:
-     It should be impossible to break a working copy by just copying something
-     into it.
-   Notes:
-     r1560701 is a regression test for this problem, but can't be backported
-     without resolving a minor text conflict.
-   Votes:
-     +1: rhuijben, brane, stefan2
-

Modified: subversion/branches/1.7.x/subversion/libsvn_wc/wc_db.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.7.x/subversion/libsvn_wc/wc_db.c?rev=1561441&r1=1561440&r2=1561441&view=diff
==============================================================================
--- subversion/branches/1.7.x/subversion/libsvn_wc/wc_db.c (original)
+++ subversion/branches/1.7.x/subversion/libsvn_wc/wc_db.c Sun Jan 26 04:04:29 2014
@@ -3606,6 +3606,21 @@ db_op_copy(svn_wc__db_wcroot_t *src_wcro
     }
   else
     {
+      if (copyfrom_relpath)
+        {
+          const char *repos_root_url;
+          const char *repos_uuid;
+
+          /* Pass the right repos-id for the destination db! */
+
+          SVN_ERR(svn_wc__db_fetch_repos_info(&repos_root_url, &repos_uuid,
+                                              src_wcroot->sdb, copyfrom_id,
+                                              scratch_pool));
+
+          SVN_ERR(create_repos_id(&copyfrom_id, repos_root_url, repos_uuid,
+                                  dst_wcroot->sdb, scratch_pool));
+        }
+
       SVN_ERR(cross_db_copy(src_wcroot, src_relpath, dst_wcroot,
                             dst_relpath, dst_presence, dst_op_depth,
                             dst_np_op_depth, kind,