You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by pb...@apache.org on 2010/03/25 22:16:40 UTC

svn commit: r927593 [1/3] - in /subversion/branches/1.6.x-issue3390: ./ contrib/cgi/ contrib/client-side/emacs/ contrib/hook-scripts/ contrib/server-side/ doc/user/ notes/ packages/windows-WiX/BuildSubversion/ packages/windows-innosetup/ subversion/bin...

Author: pburba
Date: Thu Mar 25 21:16:37 2010
New Revision: 927593

URL: http://svn.apache.org/viewvc?rev=927593&view=rev
Log:
Sync the 1.6.x-issue3390 branch with the 1.6.x so the former can once
again be cleanly reintegrated to the latter.

The backport of the issue #3552 fix to 1.6.x was getting in the way of
reintegrating this branch because it too added a new test to
externals_tests.py.


Modified:
    subversion/branches/1.6.x-issue3390/   (props changed)
    subversion/branches/1.6.x-issue3390/CHANGES   (props changed)
    subversion/branches/1.6.x-issue3390/STATUS
    subversion/branches/1.6.x-issue3390/contrib/cgi/mirror_dir_through_svn.README
    subversion/branches/1.6.x-issue3390/contrib/client-side/emacs/psvn.el
    subversion/branches/1.6.x-issue3390/contrib/hook-scripts/commit-email.pl.in
    subversion/branches/1.6.x-issue3390/contrib/server-side/svn-fast-backup
    subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror-test.sh
    subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror.sh
    subversion/branches/1.6.x-issue3390/doc/user/cvs-crossover-guide.html
    subversion/branches/1.6.x-issue3390/notes/fs_dumprestore.txt
    subversion/branches/1.6.x-issue3390/notes/interactive-conflict-resolution.txt
    subversion/branches/1.6.x-issue3390/notes/object-model.txt
    subversion/branches/1.6.x-issue3390/packages/windows-WiX/BuildSubversion/Pre.rtf
    subversion/branches/1.6.x-issue3390/packages/windows-innosetup/Pre.rtf
    subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/native/JNIUtil.cpp
    subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java
    subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientSynchronized.java
    subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Version.java
    subversion/branches/1.6.x-issue3390/subversion/bindings/swig/perl/native/Client.pm
    subversion/branches/1.6.x-issue3390/subversion/include/private/svn_mergeinfo_private.h
    subversion/branches/1.6.x-issue3390/subversion/libsvn_client/commit_util.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_client/copy.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_client/delete.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_client/log.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_client/merge.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_client/mergeinfo.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_client/mergeinfo.h
    subversion/branches/1.6.x-issue3390/subversion/libsvn_fs_fs/fs_fs.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_ra_serf/commit.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_ra_svn/client.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_repos/dump.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_repos/repos.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_subr/io.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_subr/mergeinfo.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_wc/props.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_wc/questions.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_wc/status.c
    subversion/branches/1.6.x-issue3390/subversion/libsvn_wc/wc_db.h
    subversion/branches/1.6.x-issue3390/subversion/po/zh_CN.po
    subversion/branches/1.6.x-issue3390/subversion/svnlook/main.c
    subversion/branches/1.6.x-issue3390/subversion/svnserve/main.c
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/externals_tests.py
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/log_tests.py
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/merge_tests.py
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/svnadmin_tests.py
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/svnlook_tests.py
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/svntest/actions.py
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/svntest/main.py
    subversion/branches/1.6.x-issue3390/subversion/tests/cmdline/update_tests.py
    subversion/branches/1.6.x-issue3390/subversion/tests/libsvn_subr/path-test.c
    subversion/branches/1.6.x-issue3390/tools/buildbot/slaves/README
    subversion/branches/1.6.x-issue3390/tools/client-side/change-svn-wc-format.py
    subversion/branches/1.6.x-issue3390/tools/client-side/svn-graph.pl
    subversion/branches/1.6.x-issue3390/tools/dev/contribulyze.py
    subversion/branches/1.6.x-issue3390/tools/dev/po-merge.py
    subversion/branches/1.6.x-issue3390/tools/dev/svn-merge-revs.py
    subversion/branches/1.6.x-issue3390/tools/dist/gen_nightly_ann.py
    subversion/branches/1.6.x-issue3390/www/design.html
    subversion/branches/1.6.x-issue3390/www/merge-tracking/func-spec.html
    subversion/branches/1.6.x-issue3390/www/merge-tracking/requirements.html
    subversion/branches/1.6.x-issue3390/www/merge-tracking/summit.html
    subversion/branches/1.6.x-issue3390/www/variance-adjusted-patching.html
    subversion/branches/1.6.x-issue3390/www/webdav-usage.html

Propchange: subversion/branches/1.6.x-issue3390/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar 25 21:16:37 2010
@@ -1,10 +1,15 @@
 /subversion/branches/1.5.x-r30215:866657
+/subversion/branches/1.6.x:907042-927592
 /subversion/branches/1.6.x-1.6.8-serfassertion:900822-900868
 /subversion/branches/1.6.x-UNC-paths:872816-872890
 /subversion/branches/1.6.x-dirent-basename:872475-872607
 /subversion/branches/1.6.x-future-proof:880259-884209
+/subversion/branches/1.6.x-issue-3242-partial:916088-923778
+/subversion/branches/1.6.x-issue3432:878598-924025
 /subversion/branches/1.6.x-issue3443:874942-875825
 /subversion/branches/1.6.x-issue3519:880376-889934
+/subversion/branches/1.6.x-issue3573:906488-923765
+/subversion/branches/1.6.x-issue3605:923668-923887
 /subversion/branches/1.6.x-no-svn_uri:872705-872760
 /subversion/branches/1.6.x-r36178:874221-874229
 /subversion/branches/1.6.x-r36252:872673-873133
@@ -24,7 +29,12 @@
 /subversion/branches/1.6.x-r39887:876369-876411
 /subversion/branches/1.6.x-r40452:880530-890996
 /subversion/branches/1.6.x-r889840:889888-890974
+/subversion/branches/1.6.x-r891672:891676-923748
+/subversion/branches/1.6.x-r892050:923839-923856
 /subversion/branches/1.6.x-r896522:896528-897866
+/subversion/branches/1.6.x-r898963:899874-915098
+/subversion/branches/1.6.x-r905326:905545-923537
+/subversion/branches/1.6.x-wc-ng-check-override:910213-923776
 /subversion/branches/bdb-reverse-deltas:868395-868874
 /subversion/branches/diff-callbacks3:866404-867106
 /subversion/branches/dont-save-plaintext-passwords-by-default:867073-867463
@@ -40,6 +50,7 @@
 /subversion/branches/issue-3067-deleted-subtrees:869720-870429
 /subversion/branches/issue-3148-dev:871538-871549
 /subversion/branches/issue-3220-dev:868555-868571
+/subversion/branches/issue-3242-dev:879762,880472,880579
 /subversion/branches/issue-3334-dirs:871501-872212
 /subversion/branches/kwallet:867130-867659
 /subversion/branches/log-g-performance:867286-867377
@@ -54,4 +65,4 @@
 /subversion/branches/tc_url_rev:870696-870828
 /subversion/branches/tree-conflicts:864636-869499
 /subversion/branches/tree-conflicts-notify:870271-870353
-/subversion/trunk:875976,875980-875981,876054-876056,876092,876175,876299,876306,876427,876440,876450,876507,876571,877016,879093,879688,880274-880275,880370,880450,880474,880525-880526,881905,884842,886164,886197,888715,888979,889081,889840,895514,895653,896522,900797,902093
+/subversion/trunk:875976,875980-875981,876054-876056,876092,876175,876299,876306,876427,876440,876450,876507,876571,876862,877016,877203,877595,877597,877665,878216,878269,878321,878341,878343,878399,878423,878426,879093,879688,880274-880275,880370,880450,880474,880525-880526,880552,881905,884842,886164,886197,888715,888979,889081,889840,891672,892050,892085,895514,895653,896522,896915,898963,899826,899828,900797,901752,902093,904301,904394,904594,905303,905326,906256,906305,917640,918211,922516

Propchange: subversion/branches/1.6.x-issue3390/CHANGES
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar 25 21:16:37 2010
@@ -1,10 +1,15 @@
 /subversion/branches/1.5.x-r30215/CHANGES:866657
+/subversion/branches/1.6.x/CHANGES:907042-927592
 /subversion/branches/1.6.x-1.6.8-serfassertion/CHANGES:900822-900868
 /subversion/branches/1.6.x-UNC-paths/CHANGES:872816-872890
 /subversion/branches/1.6.x-dirent-basename/CHANGES:872475-872607
 /subversion/branches/1.6.x-future-proof/CHANGES:880259-884209
+/subversion/branches/1.6.x-issue-3242-partial/CHANGES:916088-923778
+/subversion/branches/1.6.x-issue3432/CHANGES:878598-924025
 /subversion/branches/1.6.x-issue3443/CHANGES:874942-875825
 /subversion/branches/1.6.x-issue3519/CHANGES:880376-889934
+/subversion/branches/1.6.x-issue3573/CHANGES:906488-923765
+/subversion/branches/1.6.x-issue3605/CHANGES:923668-923887
 /subversion/branches/1.6.x-no-svn_uri/CHANGES:872705-872760
 /subversion/branches/1.6.x-r36178/CHANGES:874221-874229
 /subversion/branches/1.6.x-r36252/CHANGES:872673-873133
@@ -24,7 +29,12 @@
 /subversion/branches/1.6.x-r39887/CHANGES:876369-876411
 /subversion/branches/1.6.x-r40452/CHANGES:880530-890996
 /subversion/branches/1.6.x-r889840/CHANGES:889888-890974
+/subversion/branches/1.6.x-r891672/CHANGES:891676-923748
+/subversion/branches/1.6.x-r892050/CHANGES:923839-923856
 /subversion/branches/1.6.x-r896522/CHANGES:896528-897866
+/subversion/branches/1.6.x-r898963/CHANGES:899874-915098
+/subversion/branches/1.6.x-r905326/CHANGES:905545-923537
+/subversion/branches/1.6.x-wc-ng-check-override/CHANGES:910213-923776
 /subversion/branches/bdb-reverse-deltas/CHANGES:868395-868874
 /subversion/branches/diff-callbacks3/CHANGES:866404-867106
 /subversion/branches/dont-save-plaintext-passwords-by-default/CHANGES:867073-867463
@@ -39,6 +49,7 @@
 /subversion/branches/issue-3067-deleted-subtrees/CHANGES:869720-870429
 /subversion/branches/issue-3148-dev/CHANGES:871538-871549
 /subversion/branches/issue-3220-dev/CHANGES:868555-868571
+/subversion/branches/issue-3242-dev/CHANGES:879762,880472,880579
 /subversion/branches/issue-3334-dirs/CHANGES:871501-872212
 /subversion/branches/kwallet/CHANGES:867130-867659
 /subversion/branches/log-g-performance/CHANGES:867286-867377
@@ -53,4 +64,4 @@
 /subversion/branches/tc_url_rev/CHANGES:870696-870828
 /subversion/branches/tree-conflicts/CHANGES:864636-869499
 /subversion/branches/tree-conflicts-notify/CHANGES:870271-870353
-/subversion/trunk/CHANGES:875962-901365
+/subversion/trunk/CHANGES:875962-901365,901752,904301,904394,904594,905303,905326,917640,918211,922516

Modified: subversion/branches/1.6.x-issue3390/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/STATUS?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/STATUS (original)
+++ subversion/branches/1.6.x-issue3390/STATUS Thu Mar 25 21:16:37 2010
@@ -15,43 +15,6 @@ Status of 1.6.10:
 
 Candidate changes:
 
- * r878078, r878088, r878102, r878196
-   Make KWallet window attached to terminal window.
-   Justification:
-     Without this change, KWallet window can appear behind terminal window
-     and is left after killing terminal.
-   Votes:
-     +1: arfrever
-     -0: peters, stsp (without r878196) (code is ugly and Linux-specific -
-                                            would getenv("WINDOWID") work
-                                            instead?)
-
- * r878216, r878341, r878343, r876862, r877203, r877595, r877665, r877597, r878269,
-   r878321, r878399, r878423, r878426
-   Fix issue #3432 'Merge can record mergeinfo from natural history gaps'
-   Justification:
-     Gaps in merge sources can lead to the creation of invalid mergeinfo
-     or the removal of valid mergeinfo.
-   Notes:     
-     The fix itself in r878399 is relatively simple, but recent refactoring
-     of the merge code on trunk makes it look a lot worse than it is.
-     Unless otherwise noted, all of the following are nominated simply to
-     avoid a conflict nightmare:
-     r878216, r878341, r878343 - New test and test tweaks for the issue.
-     r876862 - Comment changes only.
-     r877203 - Scope reduction of a pool.
-     r877595 - Minor bug fix and some refactoring.
-     r877665 - Comment changes only.
-     r877597 - Merge code refactoring.
-     r878269 - Pool use cleanup, no functional change.
-     r878321 - More merge code refactoring.
-     r878423 - Variable rename to avoid shadowing a previous local.
-     r878426 - Remove an unused variable.
-   Branch:
-     ^/subversion/branches/1.6.x-issue3432
-   Votes:
-     +1: pburba, stsp
-
  * r876032, r876104, r878447, r878910, r878911, r878916
    Several fixes to the Win32 exception handler. This change also makes it
    available on Windows Vista and 7 where it was previously blocked by a
@@ -104,132 +67,124 @@ Candidate changes:
    Votes:
      +1: rhuijben
 
- * r880552
-   Try to enable TCP keep-alives in svnserve.
+ * r898048
+   Extend the Windows only, crypto api verification of server certificates
+   to check for certificate revocation. Also simplify the code by making
+   Windows do the chain verification instead of just taking an intermediate
+   result.
    Justification:
-     ra_svn clients do this, too. It should not do any harm.
-     Is likely to fix hanging svnserve processes which still linger
-     blocking on reads from sockets after days of inactivity on the
-     connection, a problem seen and reported by MPlayer developers in #svn.
+     It's better to be safe, when we are talking about SSL.
    Votes:
-     +1: stsp, rhuijben
+     +1: rhuijben
 
- * r892050, 892085
-   Fix a reintegrate bug which can occur when the merge source has mergeinfo
-   that explicitly describes common history with the reintegrate target.
+ * r877016, r902093
+   Fix issue #3390 'relative externals not updated during switch'.
    Justification:
-     Reintegrate merges may not work if the reintegrate source has self-
-     referential mergeinfo that is also self-referential to the reintegrate
-     target.  This occured in our own repository, see
-     http://svn.haxx.se/dev/archive-2009-12/0338.shtml.
+     One of the selling points of relative externals was their ability
+     to be used to span branches and tags.  Not so useful if switching
+     to a different tag or branch doesn't actually cause the external
+     to point to the right place.
+   Branch:
+     ^/subversion/branches/1.6.x-issue3390
+   Votes:
+     +1: cmpilato, stsp
+
+ * r878590, r878607, r878625, r878626, r878627
+   In trunk we optimized the common case of 'find-and-replace with same uri'
+   of proxied content thanks to issue 3445.
+   r878590 is just a change that adds FIXME marker to code comment. We take it
+   to avoid spurious conflicts with other revisions.
+   r878607 Special cases no-op find and replace.
+   "r878625, r878626, r878627" are follow-up to r878607 and the other long 
+   pending Master info leak to the clients.
+   Justification:
+     1. This group has the most common 'optimization' fix of *not* groking the
+        proxied response to find and replace with same string.
+     2. Fixes the master information leak via the Location header.
+     3. Need this to be ported for the other defect to be ported
+        without conflict.
+   Votes:
+     +1: kameshj
+     
+ * r908980, r908981
+   This followup on r896915, makes sure that the Windows specific remove
+   readonly attribute code still works on FAT32 filesystems. (The FAT32
+   driver reports a very different error than the NTFS driver)
+   Justification:
+     Without this patch, users using a USB stick formatted with this
+     filesystem will see 'file exists' errors on some working copy
+     operations. (This patch should have been part of the r896915
+     group). I certainly don't recommend using FAT32 to host a
+     subversion working copy. But AnkhSVN reports show that it is a
+     common user scenario.
    Votes:
-     +1: pburba, rhuijben
+     +1: rhuijben
 
- * r891672
-   Fix issue #3552 - File external from URL cannot overwrite the existing
-   versioned item
+ * r916286, r917512
+   This backport depends on the r878590 group only for the conflict free port.
    Justification:
-     This defect affects 'subversive' client users in 1.6.x.
-   Notes:
-     The backport branch exists in order to make the patch compatible with
-     1.6.x tests. r876917 introduces 'switched' to wc status which is not 
-     available in 1.6.x.
-   Branch:
-     ^/subversion/branches/1.6.x-r891672
+     Vague commit error when server has been configured with <Location /svn/>
+     and write through proxy.
    Votes:
-     +1: stylesen
+     +1: kameshj
 
- * r896915
-   On Windows, stop retrying a move operation without looking to the
-   initial error code. 
+ * r917523
+   This backport depends on the r878590 and r916286 groups only for the
+   conflict free port.
    Justification:
-     Without this patch the initial move error is lost, which makes it
-     impossible to diagnose the real error.
+     If the configured slave url has the *encodable* characters *write through*
+     is not happening rather commit happens in slave itself.
    Votes:
-     +1: rhuijben
+     +1: kameshj
 
- * r898048
-   Extend the Windows only, crypto api verification of server certificates
-   to check for certificate revocation. Also simplify the code by making
-   Windows do the chain verification instead of just taking an intermediate
-   result.
+ * r926151, r926167
+   Add an additional check for bogus `changes' table item sequencing.
+   Apparently the custom Google backend managed to trigger some badness
+   along these lines.
+   Notes:
+     r926151 adds a test and fix for BDB; r926167 ports the change to FSFS.
    Justification:
-     It's better to be safe, when we are talking about SSL.
+     Safety first.
    Votes:
-     +1: rhuijben
+     +1: cmpilato
 
- * r898963, r899826, r899828
-   Fix issue #3501 - Repos & wc issues with some NFS clients, notably NetBSD,
-   due to buggy interaction between unlink, rewinddir, and NFS caching.
-   Branch resolves two trivial conflicts.
+ * r927323, r927328
+   Return all atomical initialization errors wrapped in a
+   SVN_ERR_ATOMIC_INIT_FAILURE error, to make sure they are not
+   misidentified as just some error.
    Justification:
-     Bug reporter says, "For me, this problem forces us to stay with
-     Subversion 1.4."
-   Notes:
-     rhuijben: This patch triggers several errors in the python test suite
-               for me. File Deletes are asynchronous on Windows and after
-               applying this patch some delete calls in our test suite's
-               cleanup code get an access denied, which is not handled there.
-               The tests themselves complete successfully.
-   Branch:
-     ^/subversion/branches/1.6.x-r898963
+     This fix helps identifying some errors that were previously ignored
+     as just another error.
    Votes:
-     +1: peters, rhuijben
+     +1: rhuijben, stylesen
 
- * r901752
-   Allow 'svn log' on an uncommitted copy/move destination.
-   Notes:
-     svn_client_log5 API promises that unspecified peg revisions default
-     to svn_opt_revision_working for WC paths; prior to r901752 we were
-     not keeping this promise.
+ * r923389, r923391
+   Fix a bug where the ordering of arguments to svn_rangelist_intersect can
+   produce different results.
    Justification:
-     APIs should do what they say they do.
+     The intersection of A and B != the intersection of B and A?
+     In a word: bad.  See http://svn.haxx.se/dev/archive-2010-03/0400.shtml.
+   Notes:
+     r923389 is the fix and a new C test, r923391 is a follow-up that fixed
+     a build-breaking typo from r923389,
+   Branch:
+     ^/subversion/branches/1.6.x-r923389
    Votes:
      +1: pburba
- 
- * r904301, r904394
-   Update every occurence of the Subversion repository URL to apache.org,
-   except in CHANGES (for sentimental reasons, I guess).
-   Justification:
-     Tools and doc references should point at the new locations.
-   Votes:
-     +1: neels
-
-* r904594
-  Update 'svnadmin verify' to recognize malformed/missing revprops files
-  Justification:
-    It's misleading for 'svnadmin verify' to say a repository is fine
-    when in reality it isn't.
-  Votes:
-    +1: jwhitlock, danielsh
-
- * r905303
-   Make 'svnadmin hotcopy' copy fsfs.conf for FSFS repositories.
-   Justification:
-     svnadmin hotcopy is supposed to copy all files.
-   Votes:
-     +1: stsp
-
-  * r905326
-    Issue #3561: Teach ra_serf the same out-of-date fix we taught ra_neon.
-    Justification:
-      Feature parity with ra_neon is goodness and fixes real-world issue.
-   Branch:
-     ^/subversion/branches/1.6.x-r905326
-    Votes:
-      +1: jerenkrantz, kameshj
-
- * r906256, 906305
-   Fix issue #3573 'local non-inheritable mergeinfo changes not properly
-   merged with updated mergeinfo'
-   Notes:
-   Justification:
-     svn:mergeinfo should be mergeable, but in this issue mergeinfo changes
-     brought down by an update were not properly merged with local changes.
+
+ * r921453, r927184, r927243
+   Fix reopened issue #3020 'Reflect dropped/renumbered revisions in
+   svn:mergeinfo data during svnadmin load'
+   Justification:
+     Prior to this fix, when loading a partial dump with mergeinfo, the
+     resulting mergeinfo in the target repository could refer to non-existent
+     revisions or revisions that have nothing to do with the merge source
+     in the original repository.  The original fix for issue assumed that
+     the dump stream was for a complete repository.
    Notes:
-     r906256 is a test demonstrating the problem and r906305 is the fix.
+     r921453 and 927184 are tests, r927243 is the fix.
    Branch:
-     ^/subversion/branches/1.6.x-issue3573
+     ^/subversion/branches/1.6.x-issue3020
    Votes:
      +1: pburba
 
@@ -267,5 +222,16 @@ Veto-blocked changes:
      -1: rhuijben (Introduces new features and changes output;
                    I think it should be removed from STATUS)
 
+ * r878078, r878088, r878102, r878196
+   Make KWallet window attached to terminal window.
+   Justification:
+     Without this change, KWallet window can appear behind terminal window
+     and is left after killing terminal.
+   Votes:
+     +1: arfrever
+     -0: peters
+     -1: stsp, rhuijben ("/proc/%ld/stat" is ugly and Linux-specific -
+                         would just getenv("WINDOWID") work instead?)
+
 Approved changes:
 =================

Modified: subversion/branches/1.6.x-issue3390/contrib/cgi/mirror_dir_through_svn.README
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/contrib/cgi/mirror_dir_through_svn.README?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/contrib/cgi/mirror_dir_through_svn.README (original)
+++ subversion/branches/1.6.x-issue3390/contrib/cgi/mirror_dir_through_svn.README Thu Mar 25 21:16:37 2010
@@ -55,7 +55,7 @@ How to use it
 1) Get a copy of svn_load_dirs.pl, revision 3787 or later.  You can
    find it in:
 
-      http://svn.collab.net/repos/svn/trunk/tools/client-side/
+      http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/
 
 2) Edit the configuration variables in mirror_dirs_through_svn.cgi so
    it knows the location of svn, the location of svn_load_dirs.pl, the

Modified: subversion/branches/1.6.x-issue3390/contrib/client-side/emacs/psvn.el
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/contrib/client-side/emacs/psvn.el?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/contrib/client-side/emacs/psvn.el (original)
+++ subversion/branches/1.6.x-issue3390/contrib/client-side/emacs/psvn.el Thu Mar 25 21:16:37 2010
@@ -136,7 +136,7 @@
 ;; The latest version of psvn.el can be found at:
 ;;   http://www.xsteve.at/prg/emacs/psvn.el
 ;; Or you can check it out from the subversion repository:
-;;   svn co http://svn.collab.net/repos/svn/trunk/contrib/client-side/emacs emacs-svn
+;;   svn co http://svn.apache.org/repos/asf/subversion/trunk/contrib/client-side/emacs emacs-svn
 
 ;; TODO:
 ;; * shortcut for svn propset svn:keywords "Date" psvn.el
@@ -1701,7 +1701,7 @@ The results are used to build the `svn-s
           ;; (message "Going to skip %s" skip-double-external-dir-entry-name)
           nil)
          ((looking-at "--- Changelist") ; skip svn changelist header lines
-          ;; See: http://svn.collab.net/repos/svn/trunk/notes/changelist-design.txt
+          ;; See: http://svn.apache.org/repos/asf/subversion/trunk/notes/changelist-design.txt
           nil)
          (t
           (setq svn-marks (buffer-substring (point) (+ (point) svn-marks-length))

Modified: subversion/branches/1.6.x-issue3390/contrib/hook-scripts/commit-email.pl.in
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/contrib/hook-scripts/commit-email.pl.in?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/contrib/hook-scripts/commit-email.pl.in (original)
+++ subversion/branches/1.6.x-issue3390/contrib/hook-scripts/commit-email.pl.in Thu Mar 25 21:16:37 2010
@@ -5,7 +5,7 @@
 # using mailer.py for post-commit and post-revprop change
 # notifications.  If you wish to improve or add features to a
 # post-commit notification script, please do that work on mailer.py.
-# See http://svn.collab.net/repos/svn/trunk/tools/hook-scripts/mailer .
+# See http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/mailer .
 # ====================================================================
 
 # ====================================================================

Modified: subversion/branches/1.6.x-issue3390/contrib/server-side/svn-fast-backup
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/contrib/server-side/svn-fast-backup?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/contrib/server-side/svn-fast-backup (original)
+++ subversion/branches/1.6.x-issue3390/contrib/server-side/svn-fast-backup Thu Mar 25 21:16:37 2010
@@ -251,7 +251,7 @@ def do_rsync_backup():
     ### Use rsync to make a copy.
     # We need to copy the 'current' file first.
     # Don't copy the transactions/ directory.
-    # See http://svn.collab.net/repos/svn/trunk/notes/fsfs
+    # See http://svn.apache.org/repos/asf/subversion/trunk/notes/fsfs
 
     rsync_dest = os.path.join(backup_tmpdir,'')
 

Modified: subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror-test.sh
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror-test.sh?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror-test.sh (original)
+++ subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror-test.sh Thu Mar 25 21:16:37 2010
@@ -7,7 +7,7 @@
 #
 # License:
 #    The same as svn itself. for latest version check:
-#    http://svn.collab.net/repos/svn/trunk/subversion/LICENSE
+#    http://svn.apache.org/repos/asf/subversion/trunk/subversion/LICENSE
 #
 #######################################################################
 

Modified: subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror.sh
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror.sh?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror.sh (original)
+++ subversion/branches/1.6.x-issue3390/contrib/server-side/svnmirror.sh Thu Mar 25 21:16:37 2010
@@ -65,14 +65,14 @@ VERSION="0.0.7"
 #
 # License:
 #    The same as svn itself. for latest version check:
-#    http://svn.collab.net/repos/svn/trunk/subversion/LICENSE
+#    http://svn.apache.org/repos/asf/subversion/trunk/subversion/LICENSE
 #
 # Thanks to the subversion team for their great work.
 #
 # Links:
 #    If you do not like our solution check:
 #       - svnpush
-#         + http://svn.collab.net/repos/svn/trunk/contrib/client-side/svn-push/svn-push.c
+#         + http://svn.apache.org/repos/asf/subversion/trunk/contrib/client-side/svn-push/svn-push.c
 #       - svn replicate
 #         + https://open.datacore.ch/read-only/
 #       - SVN::Mirror and SVN::Web

Modified: subversion/branches/1.6.x-issue3390/doc/user/cvs-crossover-guide.html
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/doc/user/cvs-crossover-guide.html?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/doc/user/cvs-crossover-guide.html (original)
+++ subversion/branches/1.6.x-issue3390/doc/user/cvs-crossover-guide.html Thu Mar 25 21:16:37 2010
@@ -784,7 +784,7 @@ different convention altogether.</p>
 <p>As an example, you can see all of Subversion's tags by running:</p>
 
 <pre>
-   $ svn ls --verbose http://svn.collab.net/repos/svn/tags
+   $ svn ls --verbose http://svn.apache.org/repos/asf/subversion/tags
      &hellip;
        7739 kfogel              Nov 13 22:05 0.33.0/
        7796 josander            Nov 18 12:15 0.33.1/

Modified: subversion/branches/1.6.x-issue3390/notes/fs_dumprestore.txt
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/notes/fs_dumprestore.txt?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/notes/fs_dumprestore.txt (original)
+++ subversion/branches/1.6.x-issue3390/notes/fs_dumprestore.txt Thu Mar 25 21:16:37 2010
@@ -1,5 +1,5 @@
 This document has been moved to:
 
-   http://svn.collab.net/repos/svn/trunk/notes/dump-load-format.txt
+   http://svn.apache.org/repos/asf/subversion/trunk/notes/dump-load-format.txt
 
 (This forwarding pointer is just for link-compatibility.)

Modified: subversion/branches/1.6.x-issue3390/notes/interactive-conflict-resolution.txt
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/notes/interactive-conflict-resolution.txt?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/notes/interactive-conflict-resolution.txt (original)
+++ subversion/branches/1.6.x-issue3390/notes/interactive-conflict-resolution.txt Thu Mar 25 21:16:37 2010
@@ -63,5 +63,5 @@ So your conflict-callback is going to ha
        -> CLI simply says, "You want to delete the prop, they want to
           set its value to blah."  No other diff offered.
 
-http://svn.collab.net/repos/svn/trunk/subversion/svn/conflict-callbacks.c
+http://svn.apache.org/repos/asf/subversion/trunk/subversion/svn/conflict-callbacks.c
 contains the conflict resolution callback for the command-line client.

Modified: subversion/branches/1.6.x-issue3390/notes/object-model.txt
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/notes/object-model.txt?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/notes/object-model.txt (original)
+++ subversion/branches/1.6.x-issue3390/notes/object-model.txt Thu Mar 25 21:16:37 2010
@@ -167,4 +167,4 @@ Notes
 [6] http://www.wxwidgets.org/
 [7] http://mapserver.gis.umn.edu/
 [8] http://svn.haxx.se/dev/archive-2003-10/0215.shtml
-[9] http://svn.collab.net/repos/svn/branches/ctypes-python-bindings/
+[9] http://svn.apache.org/repos/asf/subversion/branches/ctypes-python-bindings/

Modified: subversion/branches/1.6.x-issue3390/packages/windows-WiX/BuildSubversion/Pre.rtf
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/packages/windows-WiX/BuildSubversion/Pre.rtf?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
Binary files - no diff available.

Modified: subversion/branches/1.6.x-issue3390/packages/windows-innosetup/Pre.rtf
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/packages/windows-innosetup/Pre.rtf?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/packages/windows-innosetup/Pre.rtf (original)
+++ subversion/branches/1.6.x-issue3390/packages/windows-innosetup/Pre.rtf Thu Mar 25 21:16:37 2010
@@ -5,7 +5,7 @@ Subversion is a compelling replacement f
 \par
 See:\par
   http://subversion.tigris.org/ and\par
-  http://svn.collab.net/repos/svn/trunk/CHANGES for more info.\par
+  http://svn.apache.org/repos/asf/subversion/trunk/CHANGES for more info.\par
 \par
 Subversion is using some external programs and libraries included in this package.\par
 The proper licenses are in the licenses folder in the application path created after this installation.\par

Modified: subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/native/JNIUtil.cpp
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/native/JNIUtil.cpp?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/native/JNIUtil.cpp (original)
+++ subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/native/JNIUtil.cpp Thu Mar 25 21:16:37 2010
@@ -234,7 +234,7 @@ bool JNIUtil::JNIGlobalInit(JNIEnv *env)
   g_pool = svn_pool_create(NULL);
 
 #if defined(WIN32) || defined(__CYGWIN__)
-  /* See http://svn.collab.net/repos/svn/trunk/notes/asp-dot-net-hack.txt */
+  /* See http://svn.apache.org/repos/asf/subversion/trunk/notes/asp-dot-net-hack.txt */
   /* ### This code really only needs to be invoked by consumers of
      ### the libsvn_wc library, which basically means SVNClient. */
   if (getenv ("SVN_ASP_DOT_NET_HACK"))

Modified: subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java (original)
+++ subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java Thu Mar 25 21:16:37 2010
@@ -42,7 +42,7 @@ public interface SVNClientInterface
      * @return The name of the working copy's administrative
      * directory, which is usually <code>.svn</code>.
      * @see <a
-     * href="http://svn.collab.net/repos/svn/trunk/notes/asp-dot-net-hack.txt">
+     * href="http://svn.apache.org/repos/asf/subversion/trunk/notes/asp-dot-net-hack.txt">
      * Instructions on changing this as a work-around for the behavior of
      * ASP.Net on Windows.</a>
      * @since 1.3

Modified: subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientSynchronized.java
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientSynchronized.java?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientSynchronized.java (original)
+++ subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientSynchronized.java Thu Mar 25 21:16:37 2010
@@ -70,7 +70,7 @@ public class SVNClientSynchronized imple
      * @return The name of the working copy's administrative
      * directory, which is usually <code>.svn</code>.
      * @see <a
-     * href="http://svn.collab.net/repos/svn/trunk/notes/asp-dot-net-hack.txt">
+     * href="http://svn.apache.org/repos/asf/subversion/trunk/notes/asp-dot-net-hack.txt">
      * Instructions on changing this as a work-around for the behavior of
      * ASP.Net on Windows.</a>
      * @since 1.3

Modified: subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Version.java
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Version.java?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Version.java (original)
+++ subversion/branches/1.6.x-issue3390/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Version.java Thu Mar 25 21:16:37 2010
@@ -21,7 +21,7 @@ package org.tigris.subversion.javahl;
 /**
  * Encapsulates version information about the underlying native
  * libraries.  Basically a wrapper for <a
- * href="http://svn.collab.net/repos/svn/trunk/subversion/include/svn_version.h"><code>svn_version.h</code></a>.
+ * href="http://svn.apache.org/repos/asf/subversion/trunk/subversion/include/svn_version.h"><code>svn_version.h</code></a>.
  */
 public class Version
 {

Modified: subversion/branches/1.6.x-issue3390/subversion/bindings/swig/perl/native/Client.pm
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/bindings/swig/perl/native/Client.pm?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/bindings/swig/perl/native/Client.pm (original)
+++ subversion/branches/1.6.x-issue3390/subversion/bindings/swig/perl/native/Client.pm Thu Mar 25 21:16:37 2010
@@ -46,7 +46,7 @@ SVN::Client - Subversion client function
               SVN::Client::get_username_provider()]
               );
 
-    $ctx->cat (\*STDOUT, 'http://svn.collab.net/repos/svn/trunk/README',
+    $ctx->cat (\*STDOUT, 'http://svn.apache.org/repos/asf/subversion/trunk/README',
                'HEAD');
 
     sub simple_prompt {

Modified: subversion/branches/1.6.x-issue3390/subversion/include/private/svn_mergeinfo_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/include/private/svn_mergeinfo_private.h?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/include/private/svn_mergeinfo_private.h (original)
+++ subversion/branches/1.6.x-issue3390/subversion/include/private/svn_mergeinfo_private.h Thu Mar 25 21:16:37 2010
@@ -33,6 +33,12 @@ extern "C" {
 #endif /* __cplusplus */
 
 
+/* Set inheritability of all ranges in RANGELIST to INHERITABLE.
+   If RANGELIST is NULL do nothing. */
+void
+svn_rangelist__set_inheritance(apr_array_header_t *rangelist,
+                               svn_boolean_t inheritable);
+
 /* Return whether INFO1 and INFO2 are equal in *IS_EQUAL.
 
    CONSIDER_INERITANCE determines how the rangelists in the two

Modified: subversion/branches/1.6.x-issue3390/subversion/libsvn_client/commit_util.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/libsvn_client/commit_util.c?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/libsvn_client/commit_util.c (original)
+++ subversion/branches/1.6.x-issue3390/subversion/libsvn_client/commit_util.c Thu Mar 25 21:16:37 2010
@@ -461,6 +461,9 @@ harvest_committables(apr_hash_t *committ
          svn_path_local_style(path, scratch_pool));
     }
 
+  if (entry->file_external_path && copy_mode)
+    return SVN_NO_ERROR;
+
   if (entry->kind == svn_node_dir)
     {
       /* Read the dir's own entries for use when recursing. */

Modified: subversion/branches/1.6.x-issue3390/subversion/libsvn_client/copy.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/libsvn_client/copy.c?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/libsvn_client/copy.c (original)
+++ subversion/branches/1.6.x-issue3390/subversion/libsvn_client/copy.c Thu Mar 25 21:16:37 2010
@@ -67,7 +67,7 @@
    *TARGET_MERGEINFO.  ADM_ACCESS may be NULL, if SRC_PATH_OR_URL is an
    URL.  If NO_REPOS_ACCESS is set, this function is disallowed from
    consulting the repository about anything.  RA_SESSION may be NULL but
-   only if NO_REPOS_ACCESS is true. */
+   only if NO_REPOS_ACCESS is true.  */
 static svn_error_t *
 calculate_target_mergeinfo(svn_ra_session_t *ra_session,
                            apr_hash_t **target_mergeinfo,
@@ -109,19 +109,22 @@ calculate_target_mergeinfo(svn_ra_sessio
 
   if (! locally_added)
     {
-      const char *mergeinfo_path;
-
       if (! no_repos_access)
         {
-          /* Fetch any existing (explicit) mergeinfo. */
-          SVN_ERR(svn_client__path_relative_to_root(&mergeinfo_path, src_url,
-                                                    entry ? entry->repos : NULL,
-                                                    FALSE, ra_session,
-                                                    adm_access, pool));
+          /* Fetch any existing (explicit) mergeinfo.  We'll temporarily
+             reparent to the target URL here, just to keep the code simple.
+             We could, as an alternative, first see if the target URL was a
+             child of the session URL and use the relative "remainder", 
+             falling back to this reparenting as necessary.  */
+          const char *old_session_url = NULL;
+          SVN_ERR(svn_client__ensure_ra_session_url(&old_session_url,
+                                                    ra_session, src_url, pool));
           SVN_ERR(svn_client__get_repos_mergeinfo(ra_session, &src_mergeinfo,
-                                                  mergeinfo_path, src_revnum,
+                                                  "", src_revnum,
                                                   svn_mergeinfo_inherited,
                                                   TRUE, pool));
+          if (old_session_url)
+            SVN_ERR(svn_ra_reparent(ra_session, old_session_url, pool));
         }
       else
         {

Modified: subversion/branches/1.6.x-issue3390/subversion/libsvn_client/delete.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/libsvn_client/delete.c?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/libsvn_client/delete.c (original)
+++ subversion/branches/1.6.x-issue3390/subversion/libsvn_client/delete.c Thu Mar 25 21:16:37 2010
@@ -109,7 +109,7 @@ delete_urls(svn_commit_info_t **commit_i
             svn_client_ctx_t *ctx,
             apr_pool_t *pool)
 {
-  svn_ra_session_t *ra_session;
+  svn_ra_session_t *ra_session = NULL;
   const svn_delta_editor_t *editor;
   void *edit_baton;
   void *commit_baton;
@@ -162,30 +162,47 @@ delete_urls(svn_commit_info_t **commit_i
   SVN_ERR(svn_client__ensure_revprop_table(&commit_revprops, revprop_table,
                                            log_msg, ctx, pool));
 
-  /* Open an RA session for the URL. Note that we don't have a local
-     directory, nor a place to put temp files. */
-  SVN_ERR(svn_client__open_ra_session_internal(&ra_session, common, NULL,
-                                               NULL, NULL, FALSE, TRUE,
-                                               ctx, pool));
-
   /* Verify that each thing to be deleted actually exists (to prevent
      the creation of a revision that has no changes, since the
-     filesystem allows for no-op deletes). */
+     filesystem allows for no-op deletes).  While here, we'll
+     URI-decode our targets.  */
   for (i = 0; i < targets->nelts; i++)
     {
       const char *path = APR_ARRAY_IDX(targets, i, const char *);
+      const char *item_url;
+
       svn_pool_clear(subpool);
+      item_url = svn_path_url_add_component2(common, path, subpool);
       path = svn_path_uri_decode(path, pool);
       APR_ARRAY_IDX(targets, i, const char *) = path;
-      SVN_ERR(svn_ra_check_path(ra_session, path, SVN_INVALID_REVNUM,
+
+      /* If we've not yet done so, open an RA session for the
+         URL. Note that we don't have a local directory, nor a place
+         to put temp files.  Otherwise, reparent our existing
+         session.  */
+      if (! ra_session)
+        {
+          SVN_ERR(svn_client__open_ra_session_internal(&ra_session, item_url,
+                                                       NULL, NULL, NULL, FALSE,
+                                                       TRUE, ctx, pool));
+        }
+      else
+        {
+          SVN_ERR(svn_ra_reparent(ra_session, item_url, subpool));
+        }
+
+      SVN_ERR(svn_ra_check_path(ra_session, "", SVN_INVALID_REVNUM,
                                 &kind, subpool));
       if (kind == svn_node_none)
         return svn_error_createf(SVN_ERR_FS_NOT_FOUND, NULL,
                                  "URL '%s' does not exist",
-                                 svn_path_local_style(path, pool));
+                                 svn_path_local_style(item_url, pool));
     }
   svn_pool_destroy(subpool);
 
+  /* Reparent the RA_session to the common parent of our deletees. */
+  SVN_ERR(svn_ra_reparent(ra_session, common, pool));
+
   /* Fetch RA commit editor */
   SVN_ERR(svn_client__commit_get_baton(&commit_baton, commit_info_p, pool));
   SVN_ERR(svn_ra_get_commit_editor3(ra_session, &editor, &edit_baton,

Modified: subversion/branches/1.6.x-issue3390/subversion/libsvn_client/log.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x-issue3390/subversion/libsvn_client/log.c?rev=927593&r1=927592&r2=927593&view=diff
==============================================================================
--- subversion/branches/1.6.x-issue3390/subversion/libsvn_client/log.c (original)
+++ subversion/branches/1.6.x-issue3390/subversion/libsvn_client/log.c Thu Mar 25 21:16:37 2010
@@ -317,6 +317,7 @@ svn_client_log5(const apr_array_header_t
   pre_15_receiver_baton_t rb = {0};
   apr_pool_t *iterpool;
   int i;
+  svn_opt_revision_t peg_rev;
 
   if (revision_ranges->nelts == 0)
     {
@@ -325,6 +326,11 @@ svn_client_log5(const apr_array_header_t
          _("Missing required revision specification"));
     }
 
+  /* Make a copy of PEG_REVISION, we may need to change it to a
+     default value. */
+  peg_rev.kind = peg_revision->kind;
+  peg_rev.value = peg_revision->value;
+
   /* Use the passed URL, if there is one.  */
   url_or_path = APR_ARRAY_IDX(targets, 0, const char *);
   is_url = svn_path_is_url(url_or_path);
@@ -362,7 +368,7 @@ svn_client_log5(const apr_array_header_t
           /* Default to any specified peg revision.  Otherwise, if the
            * first target is an URL, then we default to HEAD:0.  Lastly,
            * the default is BASE:0 since WC@HEAD may not exist. */
-          if (peg_revision->kind == svn_opt_revision_unspecified)
+          if (peg_rev.kind == svn_opt_revision_unspecified)
             {
               if (svn_path_is_url(url_or_path))
                 range->start.kind = svn_opt_revision_head;
@@ -370,7 +376,7 @@ svn_client_log5(const apr_array_header_t
                 range->start.kind = svn_opt_revision_base;
             }
           else
-            range->start = *peg_revision;
+            range->start = peg_rev;
 
           if (range->end.kind == svn_opt_revision_unspecified)
             {
@@ -453,6 +459,11 @@ svn_client_log5(const apr_array_header_t
                                 _("When specifying working copy paths, only "
                                   "one target may be given"));
 
+      /* An unspecified PEG_REVISION for a working copy path defautls
+         to svn_opt_revision_working. */
+      if (peg_rev.kind == svn_opt_revision_unspecified)
+          peg_rev.kind = svn_opt_revision_working;
+
       /* Get URLs for each target */
       target_urls = apr_array_make(pool, 1, sizeof(const char *));
       real_targets = apr_array_make(pool, 1, sizeof(const char *));
@@ -504,14 +515,14 @@ svn_client_log5(const apr_array_header_t
     /* If this is a revision type that requires access to the working copy,
      * we use our initial target path to figure out where to root the RA
      * session, otherwise we use our URL. */
-    if (SVN_CLIENT__REVKIND_NEEDS_WC(peg_revision->kind))
+    if (SVN_CLIENT__REVKIND_NEEDS_WC(peg_rev.kind))
       SVN_ERR(svn_path_condense_targets(&ra_target, NULL, targets, TRUE, pool));
     else
       ra_target = url_or_path;
 
     SVN_ERR(svn_client__ra_session_from_path(&ra_session, &ignored_revnum,
                                              &actual_url, ra_target, NULL,
-                                             peg_revision, &session_opt_rev,
+                                             &peg_rev, &session_opt_rev,
                                              ctx, pool));
 
     SVN_ERR(svn_ra_has_capability(ra_session, &has_log_revprops,