Author: svn-role
Date: Fri Aug 1 18:58:52 2014
New Revision: 1615195
URL: http://svn.apache.org/r1615195
Log:
Merge the r1589184 group from trunk:
* r1589184, r1589188
Properly handle properties not present and excluded on cross wc copy
Justification:
Cross working copy copies should just work.
Votes:
+1: rhuijben, philip, breser
Modified:
subversion/branches/1.8.x/ (props changed)
subversion/branches/1.8.x/STATUS
subversion/branches/1.8.x/subversion/libsvn_wc/wc_db.c
subversion/branches/1.8.x/subversion/tests/cmdline/copy_tests.py
Propchange: subversion/branches/1.8.x/
------------------------------------------------------------------------------
Merged /subversion/trunk:r1589184,1589188
Modified: subversion/branches/1.8.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1615195&r1=1615194&r2=1615195&view=diff
==============================================================================
--- subversion/branches/1.8.x/STATUS (original)
+++ subversion/branches/1.8.x/STATUS Fri Aug 1 18:58:52 2014
@@ -189,13 +189,6 @@ Veto-blocked changes:
Approved changes:
=================
- * r1589184, r1589188
- Properly handle properties not present and excluded on cross wc copy
- Justification:
- Cross working copy copies should just work.
- Votes:
- +1: rhuijben, philip, breser
-
* r1589460, r1589486
Fix copying parents of locally deleted nodes between working copies.
Justification:
Modified: subversion/branches/1.8.x/subversion/libsvn_wc/wc_db.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/libsvn_wc/wc_db.c?rev=1615195&r1=1615194&r2=1615195&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/libsvn_wc/wc_db.c (original)
+++ subversion/branches/1.8.x/subversion/libsvn_wc/wc_db.c Fri Aug 1 18:58:52 2014
@@ -3815,8 +3815,15 @@ cross_db_copy(svn_wc__db_wcroot_t *src_w
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
src_wcroot, src_relpath, scratch_pool, scratch_pool));
- SVN_ERR(db_read_pristine_props(&props, src_wcroot, src_relpath, FALSE,
- scratch_pool, scratch_pool));
+ if (dst_status != svn_wc__db_status_not_present
+ && dst_status != svn_wc__db_status_excluded
+ && dst_status != svn_wc__db_status_server_excluded)
+ {
+ SVN_ERR(db_read_pristine_props(&props, src_wcroot, src_relpath, FALSE,
+ scratch_pool, scratch_pool));
+ }
+ else
+ props = NULL;
blank_iwb(&iwb);
iwb.presence = dst_status;
Modified: subversion/branches/1.8.x/subversion/tests/cmdline/copy_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/tests/cmdline/copy_tests.py?rev=1615195&r1=1615194&r2=1615195&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/tests/cmdline/copy_tests.py (original)
+++ subversion/branches/1.8.x/subversion/tests/cmdline/copy_tests.py Fri Aug 1 18:58:52 2014
@@ -5814,6 +5814,36 @@ def copy_relocate(sbox):
svntest.actions.run_and_verify_svn(None, None, [],
'info', copiedpath)
+def ext_wc_copy_deleted(sbox):
+ "copy deleted tree from separate wc"
+
+ sbox.build()
+
+ wc_dir = sbox.wc_dir
+ wc2_dir = sbox.add_wc_path('2')
+
+ sbox.simple_rm('A/B')
+ sbox.simple_commit()
+
+ svntest.actions.run_and_verify_svn(None, None, [],
+ 'up', '--set-depth', 'exclude',
+ sbox.ospath('A/D'))
+
+ svntest.actions.run_and_verify_svn(None, None, [],
+ 'co', sbox.repo_url, wc2_dir, '-r', 1)
+
+ svntest.actions.run_and_verify_svn(None, None, [],
+ 'cp', sbox.path('A'), os.path.join(wc2_dir,'AA'))
+
+ expected_output = expected_output = svntest.wc.State(wc2_dir, {
+ 'AA' : Item(verb='Adding'),
+ 'AA/B' : Item(verb='Deleting'),
+ })
+
+ svntest.actions.run_and_verify_commit(wc2_dir,
+ expected_output, None, None,
+ wc2_dir)
+
########################################################################
# Run the tests
@@ -5932,6 +5962,7 @@ test_list = [ None,
copy_text_conflict,
copy_over_excluded,
copy_relocate,
+ ext_wc_copy_deleted,
]
if __name__ == '__main__':
|