Author: svn-role
Date: Mon Dec 1 04:01:57 2014
New Revision: 1642637
URL: http://svn.apache.org/r1642637
Log:
Merge the 1.8.x-r1641564 branch:
* r1641564
Fix issue 4185: file external not following history.
Justification:
Checkout/update fails, regression from 1.6.
Branch:
^/subversion/branches/1.8.x-r1641564
Votes:
+1: philip, rhuijben, stefan2
Modified:
subversion/branches/1.8.x/ (props changed)
subversion/branches/1.8.x/STATUS
subversion/branches/1.8.x/subversion/libsvn_client/externals.c
subversion/branches/1.8.x/subversion/tests/cmdline/externals_tests.py
Propchange: subversion/branches/1.8.x/
------------------------------------------------------------------------------
Merged /subversion/trunk:r1641564
Merged /subversion/branches/1.8.x-r1641564:r1641570-1642636
Modified: subversion/branches/1.8.x/STATUS
URL:
http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1642637&r1=1642636&r2=1642637&view=diff
==============================================================================
--- subversion/branches/1.8.x/STATUS (original)
+++ subversion/branches/1.8.x/STATUS Mon Dec 1 04:01:57 2014
@@ -107,12 +107,3 @@ Veto-blocked changes:
Approved changes:
=================
-
- * r1641564
- Fix issue 4185: file external not following history.
- Justification:
- Checkout/update fails, regression from 1.6.
- Branch:
- ^/subversion/branches/1.8.x-r1641564
- Votes:
- +1: philip, rhuijben, stefan2
Modified: subversion/branches/1.8.x/subversion/libsvn_client/externals.c
URL:
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/libsvn_client/externals.c?rev=1642637&r1=1642636&r2=1642637&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/libsvn_client/externals.c (original)
+++ subversion/branches/1.8.x/subversion/libsvn_client/externals.c Mon Dec 1
04:01:57 2014
@@ -491,7 +491,10 @@ switch_file_external(const char *local_a
svn_dirent_split(&dir_abspath, &target, local_abspath, scratch_pool);
- /* Open an RA session to 'source' URL */
+ /* ### Why do we open a new session? RA_SESSION is a valid
+ ### session -- the caller used it to call svn_ra_check_path on
+ ### this very URL, the caller also did the resolving and
+ ### reparenting that is repeated here. */
SVN_ERR(svn_client__ra_session_from_path2(&ra_session, &switch_loc,
url, dir_abspath,
peg_revision, revision,
@@ -528,7 +531,7 @@ switch_file_external(const char *local_a
invalid revnum, that means RA will use the latest revision. */
SVN_ERR(svn_ra_do_switch3(ra_session, &reporter, &report_baton,
switch_loc->rev,
- target, svn_depth_unknown, url,
+ target, svn_depth_unknown, switch_loc->url,
FALSE /* send_copyfrom */,
TRUE /* ignore_ancestry */,
switch_editor, switch_baton,
Modified: subversion/branches/1.8.x/subversion/tests/cmdline/externals_tests.py
URL:
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/tests/cmdline/externals_tests.py?rev=1642637&r1=1642636&r2=1642637&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/tests/cmdline/externals_tests.py
(original)
+++ subversion/branches/1.8.x/subversion/tests/cmdline/externals_tests.py Mon
Dec 1 04:01:57 2014
@@ -3166,6 +3166,7 @@ def pinned_externals(sbox):
# The interesting values
'Z/old-plain' : Item(contents="This is the file 'mu'.\n"),
'Z/new-plain' : Item(contents="This is the file 'mu'.\n"),
+ 'Z/new-rev' : Item(contents="This is the file 'mu'.\n"),
# And verifying X
'X/D/H/psi' : Item(contents="This is the file 'psi'.\n"),