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

svn commit: r1591144 [1/5] - in /subversion/branches/1.8.x-r1536931: ./ build/ build/ac-macros/ build/generator/ subversion/bindings/javahl/native/ subversion/bindings/swig/ subversion/bindings/swig/perl/native/ subversion/bindings/swig/ruby/libsvn_swi...

Author: breser
Date: Tue Apr 29 23:36:43 2014
New Revision: 1591144

URL: http://svn.apache.org/r1591144
Log:
On the 1.8.x-r1536931 branch: Do a catchup merge from 1.8.x to fix spurious conflicts in the op-depth-test.c file.

Added:
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/upgrade_tests_data/upgrade_1_7_dir_external.tar.bz2
      - copied unchanged from r1591142, subversion/branches/1.8.x/subversion/tests/cmdline/upgrade_tests_data/upgrade_1_7_dir_external.tar.bz2
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_subr/zlib.deflated
      - copied unchanged from r1591142, subversion/branches/1.8.x/subversion/tests/libsvn_subr/zlib.deflated
Removed:
    subversion/branches/1.8.x-r1536931/tools/server-side/svnpubsub/notes/
Modified:
    subversion/branches/1.8.x-r1536931/   (props changed)
    subversion/branches/1.8.x-r1536931/CHANGES   (contents, props changed)
    subversion/branches/1.8.x-r1536931/Makefile.in
    subversion/branches/1.8.x-r1536931/NOTICE
    subversion/branches/1.8.x-r1536931/STATUS
    subversion/branches/1.8.x-r1536931/build.conf
    subversion/branches/1.8.x-r1536931/build/ac-macros/apache.m4
    subversion/branches/1.8.x-r1536931/build/ac-macros/compiler.m4
    subversion/branches/1.8.x-r1536931/build/generator/gen_base.py
    subversion/branches/1.8.x-r1536931/build/generator/gen_win.py
    subversion/branches/1.8.x-r1536931/build/run_ctypesgen.sh
    subversion/branches/1.8.x-r1536931/configure.ac   (contents, props changed)
    subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.cpp
    subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.h
    subversion/branches/1.8.x-r1536931/subversion/bindings/swig/core.i
    subversion/branches/1.8.x-r1536931/subversion/bindings/swig/perl/native/Makefile.PL.in
    subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c
    subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/test/test_client.rb
    subversion/branches/1.8.x-r1536931/subversion/bindings/swig/svn_client.i
    subversion/branches/1.8.x-r1536931/subversion/include/private/svn_auth_private.h
    subversion/branches/1.8.x-r1536931/subversion/include/private/svn_cache.h
    subversion/branches/1.8.x-r1536931/subversion/include/private/svn_dep_compat.h
    subversion/branches/1.8.x-r1536931/subversion/include/private/svn_diff_tree.h
    subversion/branches/1.8.x-r1536931/subversion/include/private/svn_mutex.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_auth.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_client.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_config.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_diff.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_dirent_uri.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_io.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_repos.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_version.h
    subversion/branches/1.8.x-r1536931/subversion/include/svn_wc.h
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/commit_util.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/copy.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/export.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/externals.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/log.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/merge.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/prop_commands.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/update.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_client/util.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_delta/svndiff.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_fs_fs/fs.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_fs_fs/fs.h
    subversion/branches/1.8.x-r1536931/subversion/libsvn_fs_fs/fs_fs.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_fs_fs/rep-cache.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_serf/commit.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_serf/getlocks.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_serf/inherited_props.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_serf/locks.c   (contents, props changed)
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_serf/log.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_serf/update.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_serf/util.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_ra_svn/protocol
    subversion/branches/1.8.x-r1536931/subversion/libsvn_repos/commit.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_repos/dump.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_repos/fs-wrap.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_repos/reporter.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/auth.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/cache-membuffer.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/cache-memcache.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/cmdline.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/config_file.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/io.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/prompt.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/sqlite.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/sqlite3wrapper.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/subst.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/sysinfo.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/version.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_subr/win32_crypto.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/conflicts.h
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/diff.h
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/diff_local.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/status.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/upgrade.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/wc-metadata.sql
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/wc-queries.sql
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/wc.h
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/wc_db.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/wc_db.h
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/wc_db_util.c
    subversion/branches/1.8.x-r1536931/subversion/libsvn_wc/wc_db_wcroot.c
    subversion/branches/1.8.x-r1536931/subversion/mod_authz_svn/mod_authz_svn.c
    subversion/branches/1.8.x-r1536931/subversion/mod_dav_svn/dav_svn.h
    subversion/branches/1.8.x-r1536931/subversion/mod_dav_svn/lock.c
    subversion/branches/1.8.x-r1536931/subversion/mod_dav_svn/mod_dav_svn.c
    subversion/branches/1.8.x-r1536931/subversion/mod_dav_svn/reports/update.c
    subversion/branches/1.8.x-r1536931/subversion/mod_dav_svn/repos.c
    subversion/branches/1.8.x-r1536931/subversion/mod_dav_svn/util.c
    subversion/branches/1.8.x-r1536931/subversion/svn/conflict-callbacks.c
    subversion/branches/1.8.x-r1536931/subversion/svn/status-cmd.c
    subversion/branches/1.8.x-r1536931/subversion/svn/svn.c   (contents, props changed)
    subversion/branches/1.8.x-r1536931/subversion/svndumpfilter/svndumpfilter.c
    subversion/branches/1.8.x-r1536931/subversion/svnrdump/util.c
    subversion/branches/1.8.x-r1536931/subversion/svnserve/serve.c
    subversion/branches/1.8.x-r1536931/subversion/svnserve/svnserve.c
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/authz_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/autoprop_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/checkout_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/commit_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/copy_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/diff_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/export_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/lock_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/merge_automatic_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/merge_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/move_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/prop_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/redirect_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/svndumpfilter_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/upgrade_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/cmdline/wc_tests.py
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_repos/repos-test.c
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_subr/checksum-test.c
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_wc/conflict-data-test.c
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_wc/op-depth-test.c
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_wc/utils.c
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_wc/utils.h
    subversion/branches/1.8.x-r1536931/subversion/tests/libsvn_wc/wc-queries-test.c
    subversion/branches/1.8.x-r1536931/subversion/tests/svn_test.h
    subversion/branches/1.8.x-r1536931/subversion/tests/svn_test_main.c
    subversion/branches/1.8.x-r1536931/tools/server-side/mod_dontdothat/mod_dontdothat.c   (contents, props changed)

Propchange: subversion/branches/1.8.x-r1536931/
------------------------------------------------------------------------------
  Merged /subversion/branches/1.8.x-r1537193:r1537217-1541815
  Merged /subversion/branches/1.8.x-r1579588:r1579589-1591112
  Merged /subversion/branches/1.8.x-r1541790:r1541791-1542075
  Merged /subversion/branches/1.8.x-r1574868:r1575329-1579873
  Merged /subversion/branches/1.8.x-issue4437:r1567249-1591140
  Merged /subversion/branches/1.8.x-r1578311:r1578312-1589576
  Merged /subversion/branches/1.8.x-r1584342:r1584350-1589572
  Merged /subversion/branches/1.8.x-r1567985:r1568016-1568055
  Merged /subversion/branches/1.8.x-r1577151:r1589064-1589574
  Merged /subversion/branches/1.8.x-r1581305:r1581320-1582587
  Merged /subversion/branches/1.8.x:r1536934-1591142
  Merged /subversion/branches/1.8.x-r1554978:r1555500-1565076
  Merged /subversion/branches/1.8.x-javahl-exception-crash:r1586424-1588151
  Merged /subversion/trunk:r1467951,1468109,1468116,1469833,1470221,1470650,1478617,1480426,1480681,1481418,1481782,1493102,1496127,1497614,1498000,1499470,1512067,1512119,1519816,1519823,1525902,1531014,1532316,1534149,1535115,1535161,1535532,1535610,1535676,1536350,1536383,1536464,1536488,1536537,1537018,1537147,1537190,1537193,1537221,1537263,1537360,1537415,1537555,1537700,1538516-1538517,1538519,1538574,1538581,1540044,1540417,1540752,1541432,1541635,1541638,1541705,1541790,1542042,1542069,1542071,1542119,1542129,1542138,1542146,1542151,1542765,1542767,1542774,1543145,1543187,1543413,1543961,1544295,1544316,1544878,1544895,1545302,1545835,1545845,1547252,1547774,1547866,1547873,1548097,1548105,1548170,1548486,1548673,1549858,1549874,1550803,1551524,1551579,1553101,1553105,1553113,1553376-1553377,1554978,1555403,1555499,1557320,1557522,1559009,1560690,1560701,1563110,1564292,1564966,1564969,1565085,1567064,1567109,1567134,1567204,1567228,1567286,1567392,1567492,1567494,1567740,15
 67752,1567985,1568070,1568872,1568953,1568955,1570642,1571214,1571747,1571787,1571795,1572102,1572200,1573088,1573106,1573209,1574868,1575270,1575284,1575525,1575915,1577151,1577200,1577294,1577739,1577755,1577812-1577813,1578273,1578311,1578326,1578670,1578820,1578853,1578875,1579274,1579429,1579588,1579684,1580626,1580650,1580832,1580867,1580872,1581296,1581305,1581315,1581430,1581810,1583580,1583977,1584342,1584576,1584592,1584745,1585686,1586052,1586255,1586352,1586467,1587511,1587946,1587968,1588772,1588778
  Merged /subversion/branches/1.8.x-r1580626:r1580631,1580652,1580661,1581435,1588382-1591134
  Merged /subversion/branches/1.8.x-serf-no-lock-support:r1584583-1591109
  Merged /subversion/branches/1.8.x-r1578853:r1578879-1581682
  Merged /subversion/branches/1.8.x-r1577812:r1577814-1588145
  Merged /subversion/branches/1.8.x-issue4448:r1540420-1541802
  Merged /subversion/branches/1.8.x-r1537147:r1537201-1537216
  Merged /subversion/branches/1.8.x-openssl-dirs:r1535137-1540436
  Merged /subversion/branches/1.8.x-r1564215:r1564281-1564620
  Merged /subversion/branches/1.8.x-issue4480:r1588773-1591136
  Merged /subversion/branches/1.8.x-r1567286:r1567364-1567731
  Merged /subversion/branches/1.8.x-apr-0.9:r1585493-1589570

Modified: subversion/branches/1.8.x-r1536931/CHANGES
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/CHANGES?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/CHANGES (original)
+++ subversion/branches/1.8.x-r1536931/CHANGES Tue Apr 29 23:36:43 2014
@@ -1,3 +1,100 @@
+Version 1.8.8
+(19 Feb 2014, from /branches/1.8.x)
+http://svn.apache.org/repos/asf/subversion/tags/1.8.8
+
+ User-visible changes:
+  - Client-side bugfixes:
+    * use CryptoAPI to validate intermediary certificates on Windows (r1564623)
+    * fix automatic relocate for wcs not at repository root (r1541638 et al)
+    * diff: fix when target is a drive root on Windows (r1541635)
+    * wc: improve performance when used with SQLite 3.8 (r1542765)
+    * copy: fix some scenarios that broke the working copy (r1560690)
+    * move: fix errors when moving files between an external and the parent
+      working copy (r1551524, r1551579)
+    * log: resolve performance regression in certain scenarios (r1553101 et al)
+    * merge: decrease work to detect differences between 3 files (r1548486)
+    * checkout: don't require flush support for symlinks on Windows (r1547774)
+    * commit: don't change file permissions inappropriately (issue #4440)
+    * commit: fix assertion due to invalid pool lifetime (r1553376 et al)
+    * version: don't cut off the distribution version on Linux (r1544878 et al)
+    * flush stdout before exiting to avoid information being lost (r1499470)
+    * status: fix missing sentinel value on warning codes (r1543145)
+    * update/switch: improve some WC db queries that may return incorrect
+      results depending on how SQLite is built (r1567109)
+
+  - Server-side bugfixes:
+    * reduce memory usage during checkout and export (r1564215)
+    * fsfs: create rep-cache.db with proper permissions (issue #3437)
+    * mod_dav_svn: prevent crashes with SVNListParentPath on (CVE-2014-0032)
+    * mod_dav_svn: fix SVNAllowBulkUpdates directive merging (r1548105)
+    * mod_dav_svn: include requested property changes in reports (r1557522)
+    * svnserve: correct default cache size in help text (r1563110)
+    * svnadmin dump: reduce size of dump files with '--deltas' (r1554978)
+    * resolve integer underflow that resulted in infinite loops (r1567985)
+
+ Developer-visible changes:
+  - General:
+    * fix ocassional failure of check_tests.py 12 (r1496127 et al)
+    * fix failure with SQLite 3.8.1-3.8.3 when built with
+      SQLITE_ENABLE_STAT3/4 due to bug in SQLite (r1567286, r1567392)
+    * specify SQLite defaults that can be changed when SQLite is built
+      to avoid unexpected behavior with Subversion (r1567064)
+
+  - API changes:
+    * numerous documentation fixes
+    * svn_client_commit_item3_dup() fix pool lifetime issues (r1550803)
+    * ra_serf: properly ask multiple certificate validation providers for
+      acceptance of certificate failures (r1535532)
+    * release internal fs objects when closing commit editor (r1555499)
+    * svn_client_proplist4() don't call the callback multiple times for
+      the same path in order to deliver inherited properties (r1549858 et al)
+
+  - Bindings:
+    * javahl: make test suite run without installing on OS X (r1535115)
+    * swig: fix building out of tarball on OS X (r1555654)
+    * swig-pl: fix with --enable-sqlite-compatibility-version (r1559009)
+    * swig: fix building bindings on OS X when APR has the -no-cpp-precomp
+      flag in the apr-config --cppflags output. (r1535610)
+    * swig: fix building from tarball with an out-of-tree build (r1543187)
+
+
+Version 1.8.7
+(Not released, see changes for 1.8.8.)
+
+Version 1.8.6
+(Not released, see changes for 1.8.8.)
+
+
+Version 1.8.5
+(25 November 2013, from /branches/1.8.x)
+http://svn.apache.org/repos/asf/subversion/tags/1.8.5
+
+ User-visible changes:
+  - Client-side bugfixes:
+    * fix externals that point at redirected locations (issues #4428, #4429)
+    * diff: fix assertion with move inside a copy (issue #4444)
+
+  - Server-side bugfixes:
+    * mod_dav_svn: Prevent crashes with some 3rd party modules (r1537360 et al)
+    * mod_dav_svn: canonicalize paths properly (r1542071)
+    * mod_authz_svn: fix crash of mod_authz_svn with invalid config (r1541432)
+    * hotcopy: fix hotcopy losing revprop files in packed repos (issue #4448)
+ 
+  - Other tool improvements and bugfixes:
+    * mod_dontdothat: Fix the uri parser (r1542069 et al)
+
+ Developer-visible changes:
+  - General:
+    * fix compilation with '--enable-optimize' with clang (r1534860)
+    * fix compilation with debug build of BDB on Windows (r1501656, r1501702)
+    * fix '--with-openssl' option when building on Windows (r1535139) 
+    * add test to fail when built against broken ZLib (r1537193 et al)
+
+  - Bindings:
+    * swig-rb: fix tests to run without installing on OS X (r1535161)
+    * ctypes-python: build with compiler selected via configure (r1536537)
+
+
 Version 1.8.4
 (29 October 2013, from /branches/1.8.x)
 http://svn.apache.org/repos/asf/subversion/tags/1.8.4
@@ -275,7 +372,7 @@ http://svn.apache.org/repos/asf/subversi
     * decreased default http timeout for ra_serf (issue #3968)
     * prevent ra_serf from corrupting the working copy (issue #3993)
     * ra_serf transmits property changes inline to reduce requests (r1378927)
-    * allow client to avoid SSL certificate prompts (issue #2410)
+    * by default avoid SSL certificate prompts in client (issue #2410)
     * improve interactive resolution of property conflicts (r1387678 et al)
     * make ra_serf raise an error upon delta-base mismatch (issue #4235)
     * tune ra_svn transmit buffer handling (r1391788)
@@ -485,7 +582,7 @@ http://svn.apache.org/repos/asf/subversi
     * configure now script auto-detects GNOME keyring (r1387230)
     * allow configure to detect BDB on Debian-based Linux distros (r1390633)
     * auto-detect serf via pkg-config (r1391662)
-    * improve queries for compatability with SQLite 3.7.16 (r1455239)
+    * improve queries for compatibility with SQLite 3.7.16 (r1455239)
     * remove support for in-tree apr, apr-util and apr-memcache (r1456924)
     * FSFS caching supports prefixes now (r1462436)
     * maintainer mode now prints symbolic error codes (r1465157)
@@ -523,6 +620,55 @@ http://svn.apache.org/repos/asf/subversi
     * fix some reference counting bugs in swig-py bindings (r1464899, r1466524)
 
 
+Version 1.7.15
+(12 Feb 2014, from /branches/1.7.x)
+http://svn.apache.org/repos/asf/subversion/tags/1.7.15
+
+ User-visible changes:
+  - Client-side bugfixes:
+    * copy: fix some scenarios that broke the working copy (r1560690)
+    * diff: fix regressions due to fixes in 1.7.14 (issue #4460)
+
+  - Server-side bugfixes:
+    * mod_dav_svn: prevent crashes with SVNListParentPath on (CVE-2014-0032)
+    * reduce memory usage during checkout and export (r1564215)
+
+ Developer-visible changes:
+  - General:
+    * fix failure in checkout_tests.py
+    * support compiling against Cyrus sasl 2.1.25 (r1404912, r1413402)
+
+
+Version 1.7.14
+(25 Nov 2013, from /branches/1.7.x)
+http://svn.apache.org/repos/asf/subversion/tags/1.7.14
+
+ User-visible changes:
+  - Client- and server-side bugfixes:
+    * fix assertion on urls of the form 'file://./' (r1516806)
+
+  - Client-side bugfixes:
+    * upgrade: fix an assertion when used with pre-1.3 wcs (r1530849)
+    * ra_local: fix error with repository in Windows drive root (r1518184)
+    * fix crash on windows when piped command is interrupted (r1522892)
+    * fix externals that point at redirected locations (issues #4428, #4429)
+    * diff: fix incorrect calculation of changes in some cases (issue #4283)
+    * diff: fix errors with added/deleted targets (issues #4153, #4421)
+
+  - Server-side bugfixes:
+    * mod_dav_svn: Prevent crashes with some 3rd party modules (r1537360 et al)
+    * fix OOM on concurrent requests at threaded server start (r1527103 et al)
+    * fsfs: limit commit time of files with deep change histories (r1536790)
+    * mod_dav_svn: canonicalize paths properly (r1542071)
+
+  - Other tool improvements and bugfixes:
+    * mod_dontdothat: Fix the uri parser (r1542069 et al)
+
+ Developer-visible changes:
+  - Bindings:
+    * javahl: canonicalize path for streamFileContent method (r1524869)
+
+
 Version 1.7.13
 (29 Aug 2013, from /branches/1.7.x)
 http://svn.apache.org/repos/asf/subversion/tags/1.7.13
@@ -1266,7 +1412,7 @@ http://svn.apache.org/repos/asf/subversi
             http://subversion.apache.org/security/CVE-2011-1752-advisory.txt
     * fixed: write-through proxy could direcly commit to slave (r917523)
     * detect a particular corruption condition in FSFS (r1100213)
-    * improve error message when clients refer to unkown revisions (r939000)
+    * improve error message when clients refer to unknown revisions (r939000)
     * bugfixes and optimizations to the DAV mirroring code (r878607)
     * fixed: locked and deleted file causes tree conflict (issue #3525)
     * fixed: update touches locked file with svn:keywords property (issue #3471)
@@ -1636,7 +1782,7 @@ http://svn.apache.org/repos/asf/subversi
   * improve performance of 'svn update' on large files (r36389, et. al.)
   * fixed: error leak and potential crash (r36860)
   * fixed: parent directory handling on Windows (r36049, -50, -51, -131)
-  * fixed: unintialized memory errors (r36252, -3)
+  * fixed: uninitialized memory errors (r36252, -3)
   * fixed: potential working copy corruption (r36714)
   * fixed: working copy upgrade error (r36302)
   * fixed: pointer dereference error (r36783)

Propchange: subversion/branches/1.8.x-r1536931/CHANGES
------------------------------------------------------------------------------
  Merged /subversion/branches/1.8.x-issue4437/CHANGES:r1567249-1591140
  Merged /subversion/branches/1.8.x/CHANGES:r1536934-1591142
  Merged /subversion/trunk/CHANGES:r1541705,1542119,1542129,1542138,1542146,1542151,1564292,1564966,1564969,1565085,1565530,1567740,1568070

Modified: subversion/branches/1.8.x-r1536931/Makefile.in
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/Makefile.in?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/Makefile.in (original)
+++ subversion/branches/1.8.x-r1536931/Makefile.in Tue Apr 29 23:36:43 2014
@@ -108,6 +108,7 @@ PACKAGE_VERSION=@PACKAGE_VERSION@
 
 CC = @CC@
 CXX = @CXX@
+CPP = @CPP@
 EXEEXT = @EXEEXT@
 
 SHELL = @SHELL@
@@ -176,6 +177,7 @@ CXXMAINTAINERFLAGS = @CXXMAINTAINERFLAGS
 CPPFLAGS = @CPPFLAGS@ $(EXTRA_CPPFLAGS)
 LDFLAGS = @LDFLAGS@ $(EXTRA_LDFLAGS)
 SWIG_LDFLAGS = @SWIG_LDFLAGS@ $(EXTRA_SWIG_LDFLAGS)
+SWIG_CPPFLAGS = @SWIG_CPPFLAGS@ $(EXTRA_CPPFLAGS)
 
 COMPILE = $(CC) $(CMODEFLAGS) $(CPPFLAGS) $(CMAINTAINERFLAGS) $(CFLAGS) $(INCLUDES)
 COMPILE_CXX = $(CXX) $(CXXMODEFLAGS) $(CPPFLAGS) $(CXXMAINTAINERFLAGS) $(CXXFLAGS) $(INCLUDES)
@@ -198,6 +200,19 @@ COMPILE_JAVAHL_CXX = $(LIBTOOL) $(LTCXXF
 COMPILE_JAVAHL_JAVAC = $(JAVAC) $(JAVAC_FLAGS)
 COMPILE_JAVAHL_JAVAH = $(JAVAH)
 
+# export an env variable so that the tests can run without being installed
+TEST_SHLIB_VAR_JAVAHL=\
+  if [ "@SVN_APR_SHLIB_PATH_VAR@" = "DYLD_LIBRARY_PATH" ]; then \
+    for d in $(abs_builddir)/subversion/libsvn_*; do \
+      if [ -n "$$DYLD_LIBRARY_PATH" ]; then \
+        @SVN_APR_SHLIB_PATH_VAR@="$$@SVN_APR_SHLIB_PATH_VAR@:$$d/.libs"; \
+      else \
+        @SVN_APR_SHLIB_PATH_VAR@="$$d/.libs"; \
+      fi; \
+    done; \
+    export @SVN_APR_SHLIB_PATH_VAR@; \
+  fi;
+
 # special compilation for files destined for cxxhl
 COMPILE_CXXHL_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=compile $(COMPILE_CXX) $(LT_CFLAGS) $(CXXHL_INCLUDES) -o $@ -c
 
@@ -331,7 +346,7 @@ INSTALL_EXTRA_SWIG_RB=\
 # export an env variable so that the tests can run without being installed
 TEST_SHLIB_VAR_SWIG_RB=\
   if [ "@SVN_APR_SHLIB_PATH_VAR@" = "DYLD_LIBRARY_PATH" ]; then \
-    for d in $(SWIG_PY_DIR)/libsvn_swig_rb $(SWIG_PY_DIR)/../../../libsvn_*; do \
+    for d in $(SWIG_RB_DIR)/libsvn_swig_ruby $(SWIG_RB_DIR)/../../../libsvn_*; do \
       if [ -n "$$DYLD_LIBRARY_PATH" ]; then \
         @SVN_APR_SHLIB_PATH_VAR@="$$@SVN_APR_SHLIB_PATH_VAR@:$$d/.libs"; \
       else \
@@ -464,11 +479,13 @@ clean-javahl:
 
 check-tigris-javahl: javahl-compat
 	@FIX_JAVAHL_LIB@
-	$(JAVA) "-Dtest.rootdir=$(javahl_test_rootdir)" "-Dtest.srcdir=$(javahl_test_srcdir)" "-Dtest.rooturl=$(BASE_URL)" "-Dtest.fstype=$(FS_TYPE)" -Djava.library.path=@JAVAHL_OBJDIR@:$(libdir) -classpath $(javahl_compat_tests_PATH):$(javahl_tests_CLASSPATH) "-Dtest.tests=$(JAVAHL_TESTS)" org.tigris.subversion.javahl.RunTests
+	$(TEST_SHLIB_VAR_JAVAHL) \
+	$(JAVA) "-Dtest.rootdir=$(javahl_test_rootdir)" "-Dtest.srcdir=$(javahl_test_srcdir)" "-Dtest.rooturl=$(BASE_URL)" "-Dtest.fstype=$(FS_TYPE)" "-Djava.library.path=@JAVAHL_OBJDIR@:$(libdir)" -classpath "$(javahl_compat_tests_PATH):$(javahl_tests_CLASSPATH)" "-Dtest.tests=$(JAVAHL_TESTS)" org.tigris.subversion.javahl.RunTests
 
 check-apache-javahl: javahl
 	@FIX_JAVAHL_LIB@
-	$(JAVA) "-Dtest.rootdir=$(javahl_test_rootdir)" "-Dtest.srcdir=$(javahl_test_srcdir)" "-Dtest.rooturl=$(BASE_URL)" "-Dtest.fstype=$(FS_TYPE)" -Djava.library.path=@JAVAHL_OBJDIR@:$(libdir) -classpath $(javahl_tests_PATH):$(javahl_tests_CLASSPATH) "-Dtest.tests=$(JAVAHL_TESTS)" org.apache.subversion.javahl.RunTests
+	$(TEST_SHLIB_VAR_JAVAHL) \
+	$(JAVA) "-Dtest.rootdir=$(javahl_test_rootdir)" "-Dtest.srcdir=$(javahl_test_srcdir)" "-Dtest.rooturl=$(BASE_URL)" "-Dtest.fstype=$(FS_TYPE)" "-Djava.library.path=@JAVAHL_OBJDIR@:$(libdir)" -classpath "$(javahl_tests_PATH):$(javahl_tests_CLASSPATH)" "-Dtest.tests=$(JAVAHL_TESTS)" org.apache.subversion.javahl.RunTests
 
 check-javahl: check-apache-javahl
 
@@ -871,7 +888,7 @@ install-swig-rb-doc:
 
 # ctypes-python make targets
 ctypes-python: local-all
-	$(SHELL) $(abs_srcdir)/build/run_ctypesgen.sh "$(LT_EXECUTE)" "$(CPPFLAGS)" "$(EXTRA_CTYPES_LDFLAGS)" "$(PYTHON)" "$(CTYPESGEN)" "$(abs_srcdir)" "$(abs_builddir)" "$(libdir)" "$(SVN_APR_CONFIG)" "$(SVN_APRUTIL_CONFIG)"
+	$(SHELL) $(abs_srcdir)/build/run_ctypesgen.sh "$(LT_EXECUTE)" "$(CPPFLAGS)" "$(EXTRA_CTYPES_LDFLAGS)" "$(PYTHON)" "$(CTYPESGEN)" "$(abs_srcdir)" "$(abs_builddir)" "$(libdir)" "$(SVN_APR_CONFIG)" "$(SVN_APRUTIL_CONFIG)" "$(CPP)"
 
 install-ctypes-python: ctypes-python
 	cd $(CTYPES_PYTHON_SRC_DIR); \

Modified: subversion/branches/1.8.x-r1536931/NOTICE
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/NOTICE?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/NOTICE (original)
+++ subversion/branches/1.8.x-r1536931/NOTICE Tue Apr 29 23:36:43 2014
@@ -1,5 +1,5 @@
-Subversion
-Copyright 2010 The Apache Software Foundation
+Apache Subversion
+Copyright 2014 The Apache Software Foundation
 
 This product includes software developed by many people, and distributed
 under Contributor License Agreements to The Apache Software Foundation

Modified: subversion/branches/1.8.x-r1536931/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/STATUS?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/STATUS (original)
+++ subversion/branches/1.8.x-r1536931/STATUS Tue Apr 29 23:36:43 2014
@@ -10,7 +10,7 @@ See http://subversion.apache.org/docs/co
 for details on how release lines and voting work, what kinds of bugs can
 delay a release, etc.
 
-Status of 1.8.5:
+Status of 1.8.9:
 
 Candidate changes:
 ==================
@@ -24,26 +24,6 @@ Candidate changes:
      +1: blair, brane
      -0: philip (see dev thread: false alarm, trades one warning for another)
 
- * r1498000
-   Improve error handling for inherited property requests by using the
-   transition based xml parser in libsvn_ra_serf.
-   Justification:
-     This maintenance work which usually doesn't belong in a patch release
-     makes it possible to properly detect if this request should be restarted
-     on non-chunk-enabled proxies.
-   Votes:
-     +1: rhuijben, ivan
-
- * r1496127
-   Fix occasional failure of checkout_tests.py 12.
-   Justification:
-     Spurious FAILs confuse people testing the release.
-   Votes:
-     +1: philip, rhuijben
-     -0: danielsh (loses functionality; patch sent with alternative fix)
-     stsp: where exactly is the alternative patch?
-     danielsh: http://mid.gmane.org/20130705040533.GL3244@lp-shahaf.local
-
  * r1501293, r1501338, r1501360, r1501533
    Fix issue #4390, "parallel nested checkout not possible with wc-ng"
    Justification:
@@ -55,106 +35,151 @@ Candidate changes:
      Branch should probably be removed from the nomination (it was only needed
      before r1503552).
    Votes:
-     +1: stsp, rhuijben
-     -0: ivan (not regression from 1.7.x, destructive change in libsvn_wc core)
+     +1: stsp
+     -0: ivan, brane (not regression from 1.7.x,
+                      destructive change in libsvn_wc core)
+     -0: rhuijben (temporarily remove my +1 until I complete investigating
+                   a related problem. It looks like this fix doesn't work for
+                   the user scenario it was intended for)
+
+ * r1536854
+   Make 'svnadmin verify' detect inconsistencies that will prevent loading
+   dump files.
+   Justification:
+     Some users rely on dump files as a means of repository backup.  Without
+     this patch, there is no way except of 'svnadmin load' to know that these
+     dump files will load at all.  With this patch, a successful verify run
+     should guarantee loadable dump files.
+   Branch: ^/subversion/branches/1.8.x-r1536854
+   Votes:
+     +1: stefan2
 
- * r1524145
-   Make the 'm' conflict prompt option run external merge tool if configured.
-   Justification:
-     Usability fix. The current behaviour ('m' -> internal merge tool,
-     'l' -> external merge tool) confuses users who try 'm' to run an
-     external merge tool. See issue #4426.
+ * r1542610, r1564576, r1568180
+   Add missing description to build.conf, to properly generate a version
+   resource (including icon) for this executable on Windows.
+   Notes:
+     r1564576 breaks compilation on Visual Studio 2010, 2012 and 2013 of
+     this project. r1568180 fixes this problem.
    Votes:
-     +1: stsp
+     +1: rhuijben, breser
+     +1: (without r1564567, r1568180): stsp
+     -0: brane (horrible grammar; suggest translation to English)
+
+ * r1555491
+   Fix svn_fs_close_root for FSFS transaction roots.
+   Justification:
+     Without this patch, cache-related pool cleanups may be run after the
+     svn_fs_t object has been destroyed.  I.e. even with explicit calls to
+     svn_fs_close_root, the user may see a segfault.
+   Branch:
+     ^/subversion/branches/1.8.x-r1555491
+   Votes:
+     +1: stefan2
+     -0: philip, rhuijben (Seems to be a different name for the same pool?)
 
- * r1534149, r1535676
-   In the windows CryptoAPI ssl certificate verification, properly handle
-   certificates that are only trusted via intermediate authorities.
+ * r1547454
+   In FSFS, omit config file when creating pre-1.5 format repositories.
    Justification:
-      While not strictly a bug, intermediate authorities are getting more
-      common since recent Certificate Authority incidents.
-   Notes:
-      rhuijben: This introduces a new credential type as private API.
-      Not sure about our strict ABI guarantees here, but this affects
-      usability of users migrating to cloud platforms, etc.
+     Old SVN versions won't preserve this file in hotcopy.  Later versions
+     might also behave inconsistently in the presence of this file if their
+     feature availability check is incomplete.
    Votes:
-     +1: rhuijben
+     +1: stefan2
+     -0: rhuijben (Might require r1561703 to avoid breaking tests)
 
- * r1533530
-   Fix latency issue when reusing svnserve connections.
+ * r1561426
+   In FSFS, skip the generation of uniquifiers if rep-shared is no supported.
+   Branch: ^/subversion/branches/1.8.x-r1561426
+   Justification:
+     This is not known to be a bug, atm, as we omit these when we write the
+     final revisions.  But we rely on those uniquifiers to be NULL in old
+     repo formats when we compare reps.  Them being non-NULL in a txn might
+     cause problems with future changes.
+   Votes:
+     +1: stefan2
+
+ * r1567996, r1568009, r1568062, r1568063
+   Fix a caching inefficiency in multi-threaded servers.
    Justification:
-      This simple patch affects all operations that run multiple requests
-      over the same connection.  It should improve things like e.g. merge.
+     .
+   Notes:
+     Due to going back and forth with different approaches to solve this
+     issue, the best way to review this 
+   Branch:
+     ^/subversion/branches/1.8.x-r1567996
    Votes:
      +1: stefan2
+     -0: rhuijben (incomplete (misses cache->total_reads accesses) and
+                   overkill. The whole thing can be implemented with simple
+                   atomic operations while mutexes may be a limited resource)
 
- * r1499470
-   Flush stdout before exiting svn with an error.
+ * r1589184, r1589188
+   Properly handle properties not present and excluded on cross wc copy
    Justification:
-      Without this patch merge_tests.py 135 may fail to output its required
-      output.
+     Cross working copy copies should just work.
    Votes:
      +1: rhuijben
 
- * r1535115
-   Make JavaHL tests run without installing on OS X.
+ * r1589360
+   Make property output in 'svn diff' stable
    Justification:
-     Shouldn't need to install code to test it.
+     Local change that makes it easier to compare patch files.
    Votes:
-     +1: breser
+     +1: rhuijben
+     -0: stefan2 (compiler misses "private/svn_sorts_private.h")
+     
+ * r1589460, r1589486
+   Fix copying parents of locally deleted nodes between working copies.
+   Justification:
+     Resolves a case of creating invalid working copy state.
+   Votes:
+     +1: rhuijben
 
- * r1535139
-   Make openssl lib and include directory available when using --with-openssl
-   on Windows.
-   Justification:
-     Serf 1.2 simply included the openssl static library in its own static
-     library, which made it very easy for Subversion to consume, but added the
-     risk of linking to many different openssl versions (both static and
-     shared builds) at once. This bug in serf was fixed for 1.3 and we
-     updated Subversion to use 1.3 for Subversion 1.8.4, but without this
-     patch we added the assumption that ssleay32.lib and libeay32.lib are
-     within some existing referenced library directory.
-     This patch fixes that assumption by adding the right libdir to our build,
-     by borrowing some code from trunk.
-   Branch: ^/subversion/branches/1.8.x-openssl-dirs
+ * r1590751
+   Use empty, rather than NULL, config if default is unreadable.
+   Justification:
+     svn SEGV reported by user.
    Votes:
-     +1: rhuijben, ivan
+     +1: philip
+     -0: julianfoad (prefer to fix all the programs at the same time;
+                     other queries -- see email thread)
 
- * r1535161
-   Make swig-rb tests run without installing on OS X.
+ * r1591123
+   Display the proper URL for 'svn rm URL' in the commit log editor.
    Justification:
-     Shouldn't need to install code to test it.  The existing Makefile target
-     is just downright wrong.
+     It's confusing since the URL isn't what the user passed.  Regression since
+     1.7.9 when we fixed issue #4332.
    Votes:
      +1: breser
 
- * r1535532
-   Make the certificate verification handling in ra_serf properly ask multiple
-   providers for acceptance of certificate failures.
-   Justification:
-     Without this patch it is not possible to have one hook accept invalid
-     ca roots, while another provider accepts an invalid date on a certificate.
-     Probably only interesting for bindings and code that explicitly tests
-     our certificate handling behavior.
-   Votes:
-     +1: rhuijben
+Veto-blocked changes:
+=====================
 
- * r1531014, r1532316, r1536350, r1536383, r1536464, r1536488
-   Fix working copy database inconsistency on certain move scenarios,
-   including those described in issue #4437 "Deleting a moved file can maintain a
-   half move"
+ * r1524145
+   Make the 'm' conflict prompt option run external merge tool if configured.
    Justification:
-     The working copy database should be consistent on any normal operation.
+     Usability fix. The current behaviour ('m' -> internal merge tool,
+     'l' -> external merge tool) confuses users who try 'm' to run an
+     external merge tool. See issue #4426.
    Votes:
-     +1: rhuijben
+     +1: stsp
+     -1: breser (see my email to dev@, <52...@reser.org>)
 
- * r1536537
-   Fix build of ctypes-python on newer OS X versions.
-   Justificaton:
-     Build system should work.  We shouldn't be trying to use the CPP from the
-     APR build anyway.
+ * r1560723, r1561419, r1561427, r1561428
+   Fix the handling of pre-1.4 FSFS repositories.
+   Branch: ^/subversion/branches/1.8.x-r1560723-and-friends
+   Justification:
+     Without this, old SVN versions won't be able to e.g. hotcopy those
+     repos once 1.8.x made a commit in them.  Also, fix our hotcopy code
+     and make it cope with repositories broken by previous 1.8.x releases.
    Votes:
-     +1: breser
+     +1: stefan2
+     -1: ivan (Significant performance degradation for svnadmin hotcopy,
+               the root cause is not fixed. Discussion:
+               http://svn.haxx.se/dev/archive-2014-01/0158.shtml)
+
+Approved changes:
+=================
 
  * r1518942, r1536914, r1536931
    Fix commit of a specific mixed revision copy with non copy descendants that
@@ -165,10 +190,36 @@ Candidate changes:
      on some random descendant.
    Branch: ^/subversion/branches/1.8.x-r1536931
    Votes:
-     +1: rhuijben
+     +1: rhuijben, philip, breser
 
-Veto-blocked changes:
-=====================
+ * r1538812, r1538925, r1538928, r1538939
+   Properly remove moved_to information when the node in its original location
+   is removed.
+   Justification:
+     The NODES table in the working copy database should always be consistent.
+   Notes:
+     rhuijben: The test for this problem might accidentally depend on other
+               move fixes on trunk.
+   Votes:
+     +1: rhuijben, philip, breser
 
-Approved changes:
-=================
+ * r1544597, r1544600, r1544688, r1544690, r1545111, r1545122
+   Fix a specific case where the api behind status would report a different
+   move status for A depending on whether the user called 'svn status A' or
+   'svn status wc' and then looked at 'wc/A'.
+   Justification:
+     Api users such as AnkhSVN rely on the result of svn status to match and
+     this breaks their assumptions.
+     This change has the nice side effect that it resolves the most common
+     user triggerable assertion in AnkhSVN, which is really caused by a
+     broken move. (See other nomination for a fix). But even then it shouldn't
+     matter how status is called: on the node or an ancestor.
+     (It also improves status performance a tiny bit, by reducing the number
+      of sqlite transactions used)
+   Notes:
+     r1564587 fixes a function reference on the branch in some code that
+     is disabled by the macro processor on Windows.
+   Branch:
+     ^/subversion/branches/1.8.x-r1544597
+   Votes:
+     +1: philip, rhuijben, breser

Modified: subversion/branches/1.8.x-r1536931/build.conf
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/build.conf?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/build.conf (original)
+++ subversion/branches/1.8.x-r1536931/build.conf Tue Apr 29 23:36:43 2014
@@ -71,9 +71,9 @@ test-scripts =
 
 bdb-test-scripts =
 
-swig-python-opts = $(CPPFLAGS) -python -classic
-swig-perl-opts = $(CPPFLAGS) -perl -nopm -noproxy
-swig-ruby-opts = $(CPPFLAGS) -ruby
+swig-python-opts = $(SWIG_CPPFLAGS) -python -classic
+swig-perl-opts = $(SWIG_CPPFLAGS) -perl -nopm -noproxy
+swig-ruby-opts = $(SWIG_CPPFLAGS) -ruby
 swig-languages = python perl ruby
 swig-dirs = 
         subversion/bindings/swig/python
@@ -766,7 +766,7 @@ type = exe
 path = subversion/tests/libsvn_subr
 sources = checksum-test.c
 install = test
-libs = libsvn_test libsvn_subr apr
+libs = libsvn_test libsvn_subr apr zlib
 
 [compat-test]
 description = Test compatibility functions

Modified: subversion/branches/1.8.x-r1536931/build/ac-macros/apache.m4
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/build/ac-macros/apache.m4?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/build/ac-macros/apache.m4 (original)
+++ subversion/branches/1.8.x-r1536931/build/ac-macros/apache.m4 Tue Apr 29 23:36:43 2014
@@ -118,6 +118,27 @@ apache_minor_version=AP_SERVER_MINORVERS
   CPPFLAGS="$old_CPPFLAGS"
 fi
 
+# check for some busted versions of mod_dav
+# in particular 2.2.25, 2.4.5, and 2.4.6 had the following bugs which are
+# troublesome for Subversion:
+# PR 55304: https://issues.apache.org/bugzilla/show_bug.cgi?id=55304
+# PR 55306: https://issues.apache.org/bugzilla/show_bug.cgi?id=55306
+# PR 55397: https://issues.apache.org/bugzilla/show_bug.cgi?id=55397
+if test -n "$APXS" && test "$APXS" != "no"; then
+  AC_MSG_CHECKING([mod_dav version])
+  old_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$CPPFLAGS $SVN_APR_INCLUDES"
+  blacklisted_versions_regex=["\"2\" \"\.\" (\"2\" \"\.\" \"25\"|\"4\" \"\.\" \"[56]\")"]
+  AC_EGREP_CPP([apache_version= *$blacklisted_versions_regex],
+               [
+#include "$APXS_INCLUDE/ap_release.h"
+apache_version=AP_SERVER_BASEREVISION],
+               [AC_MSG_RESULT([broken])
+                AC_MSG_ERROR([Apache httpd version includes a broken mod_dav; use a newer version of httpd])],
+               [AC_MSG_RESULT([acceptable])])
+  CPPFLAGS="$old_CPPFLAGS"
+fi
+
 AC_ARG_WITH(apache-libexecdir,
             [AS_HELP_STRING([[--with-apache-libexecdir[=PATH]]],
                             [Install Apache modules to Apache's configured

Modified: subversion/branches/1.8.x-r1536931/build/ac-macros/compiler.m4
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/build/ac-macros/compiler.m4?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/build/ac-macros/compiler.m4 (original)
+++ subversion/branches/1.8.x-r1536931/build/ac-macros/compiler.m4 Tue Apr 29 23:36:43 2014
@@ -33,24 +33,27 @@ AC_DEFUN([_SVN_XXFLAGS_ADD_IFELSE],
 [
   _svn_xxflags__save="[$][$3]"
   AC_LANG_PUSH([$1])
-  AC_MSG_CHECKING([if [$][$2] accepts $4])
-  [$3]="$4 [$][$3]"
-  AC_COMPILE_IFELSE([AC_LANG_SOURCE([[]])],[
+  AC_MSG_CHECKING([if [$][$2] accepts $5])
+  [$3]="$5 [$][$3]"
+  dnl Compiling is not enough: Solaris cc accepts invalid options at
+  dnl compile-time and just warns, assuming they are for the linker,
+  dnl but they cause errors at link-time.
+  AC_LINK_IFELSE([AC_LANG_SOURCE([$4])],[
     AC_MSG_RESULT([yes])
-    $5
+    $6
   ],[
     AC_MSG_RESULT([no])
     [$3]="$_svn_xxflags__save"
-    $6
+    $7
   ])
   AC_LANG_POP([$1])
 ])
 
 AC_DEFUN([SVN_CFLAGS_ADD_IFELSE],
-  [_SVN_XXFLAGS_ADD_IFELSE([C],[CC],[CFLAGS],[$1],[$2],[$3])])
+  [_SVN_XXFLAGS_ADD_IFELSE([C],[CC],[CFLAGS],[[int main(void){return 0;}]],[$1],[$2],[$3])])
 
 AC_DEFUN([SVN_CXXFLAGS_ADD_IFELSE],
-  [_SVN_XXFLAGS_ADD_IFELSE([C++],[CXX],[CXXFLAGS],[$1],[$2],[$3])])
+  [_SVN_XXFLAGS_ADD_IFELSE([C++],[CXX],[CXXFLAGS],[[int main(){}]],[$1],[$2],[$3])])
 
 
 AC_DEFUN([SVN_CC_MODE_SETUP],

Modified: subversion/branches/1.8.x-r1536931/build/generator/gen_base.py
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/build/generator/gen_base.py?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/build/generator/gen_base.py (original)
+++ subversion/branches/1.8.x-r1536931/build/generator/gen_base.py Tue Apr 29 23:36:43 2014
@@ -314,11 +314,16 @@ class ObjectFile(DependencyNode):
     self.source_generated = 0
 
 class SWIGObject(ObjectFile):
-  def __init__(self, filename, lang):
+  def __init__(self, filename, lang, release_mode):
     ObjectFile.__init__(self, filename)
     self.lang = lang
     self.lang_abbrev = lang_abbrev[lang]
-    self.source_generated = 1
+    # in release mode the sources are not generated by the build
+    # but rather by the packager
+    if release_mode:
+      self.source_generated = 0
+    else:
+      self.source_generated = 1
     ### hmm. this is Makefile-specific
     self.compile_cmd = '$(COMPILE_%s_WRAPPER)' % self.lang_abbrev.upper()
 
@@ -614,8 +619,10 @@ class TargetSWIG(TargetLib):
     self.filename = build_path_join(self.path, lib_filename)
 
     ifile = SWIGSource(ipath)
-    cfile = SWIGObject(build_path_join(self.path, cname), self.lang)
-    ofile = SWIGObject(build_path_join(self.path, oname), self.lang)
+    cfile = SWIGObject(build_path_join(self.path, cname), self.lang,
+                       self.gen_obj.release_mode)
+    ofile = SWIGObject(build_path_join(self.path, oname), self.lang,
+                       self.gen_obj.release_mode)
 
     # the .c file depends upon the .i file
     self.gen_obj.graph.add(DT_SWIG_C, cfile, ifile)

Modified: subversion/branches/1.8.x-r1536931/build/generator/gen_win.py
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/build/generator/gen_win.py?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/build/generator/gen_win.py (original)
+++ subversion/branches/1.8.x-r1536931/build/generator/gen_win.py Tue Apr 29 23:36:43 2014
@@ -947,6 +947,9 @@ class WinGeneratorBase(GeneratorBase):
 
     if self.serf_lib:
       fakeincludes.append(self.apath(self.serf_path))
+      
+      if self.openssl_path and self.openssl_inc_dir:
+        fakeincludes.append(self.apath(self.openssl_inc_dir))
 
     if self.swig_libdir \
        and (isinstance(target, gen_base.TargetSWIG)
@@ -1006,6 +1009,9 @@ class WinGeneratorBase(GeneratorBase):
     if self.serf_lib:
       if (self.serf_ver_maj, self.serf_ver_min) >= (1, 3):
         fakelibdirs.append(self.apath(self.serf_path))
+        
+        if self.openssl_path and self.openssl_lib_dir:
+          fakelibdirs.append(self.apath(self.openssl_lib_dir))
       else:
         fakelibdirs.append(self.apath(msvc_path_join(self.serf_path, cfg)))
 
@@ -1469,6 +1475,24 @@ class WinGeneratorBase(GeneratorBase):
     "Check if serf and its dependencies are available"
 
     minimal_serf_version = (1, 2, 1)
+    
+    if self.openssl_path and os.path.exists(self.openssl_path):
+      version_path = os.path.join(self.openssl_path, 'inc32/openssl/opensslv.h')
+      if os.path.isfile(version_path):
+        # We have an OpenSSL Source location (legacy handling)
+        self.openssl_inc_dir = os.path.join(self.openssl_path, 'inc32')
+        if self.static_openssl:
+          self.openssl_lib_dir = os.path.join(self.openssl_path, 'out32')
+        else:
+          self.openssl_lib_dir = os.path.join(self.openssl_path, 'out32dll')
+      elif os.path.isfile(os.path.join(self.openssl_path,
+                          'include/openssl/opensslv.h')):
+        self.openssl_inc_dir = os.path.join(self.openssl_path, 'include')
+        self.openssl_lib_dir = os.path.join(self.openssl_path, 'lib')
+      else:
+        print('WARNING: \'opensslv.h\' not found')
+        self.openssl_path = None
+    
     self.serf_lib = None
     if self.serf_path and os.path.exists(self.serf_path):
       if self.openssl_path and os.path.exists(self.openssl_path):

Modified: subversion/branches/1.8.x-r1536931/build/run_ctypesgen.sh
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/build/run_ctypesgen.sh?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/build/run_ctypesgen.sh (original)
+++ subversion/branches/1.8.x-r1536931/build/run_ctypesgen.sh Tue Apr 29 23:36:43 2014
@@ -36,6 +36,7 @@ abs_builddir="$7"
 svn_libdir="$8"
 apr_config="$9"
 apu_config="${10}"
+cpp="${11}"
 
 cp_relpath="subversion/bindings/ctypes-python"
 output="$cp_relpath/svn_all.py"
@@ -57,7 +58,6 @@ apu_cppflags="`$apu_config --includes`" 
 apu_include_dir="`$apu_config --includedir`"
 apu_ldflags="`$apu_config --ldflags --link-ld`"
 
-cpp="`$apr_config --cpp`"
 ### end
 
 cppflags="$apr_cppflags $apu_cppflags -I$svn_includes"

Modified: subversion/branches/1.8.x-r1536931/configure.ac
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/configure.ac?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/configure.ac (original)
+++ subversion/branches/1.8.x-r1536931/configure.ac Tue Apr 29 23:36:43 2014
@@ -98,7 +98,7 @@ dnl   now generating errors instead of s
 dnl   them.  Only .7 and later can guarantee repository
 dnl   integrity with FSFS.
 
-APR_VER_REGEXES=["0\.9\.[7-9] 0\.9\.1[0-9] 1\. 2\."]
+APR_VER_REGEXES=["0\.9\.[7-9] 0\.9\.[12][0-9] 1\. 2\."]
 
 SVN_LIB_APR($APR_VER_REGEXES)
 
@@ -755,7 +755,7 @@ AC_ARG_WITH(libmagic,AS_HELP_STRING([--w
     CPPFLAGS="$CPPFLAGS -I$libmagic_prefix/include"
     AC_CHECK_HEADERS(magic.h,[
       save_ldflags="$LDFLAGS"
-      LDFLAGS="-L$libmagic_prefix/lib"
+      LDFLAGS="-L$libmagic_prefix/lib $LDFLAGS"
       AC_CHECK_LIB(magic, magic_open, [libmagic_found="yes"])
       LDFLAGS="$save_ldflags"
     ])
@@ -1443,6 +1443,11 @@ if test "$CC" = "clang"; then
   SVN_STRIP_FLAG(CPPFLAGS, [-no-cpp-precomp ])
 fi
 
+# Need to strip '-no-cpp-precomp' from CPPFLAGS for SWIG as well.
+SWIG_CPPFLAGS="$CPPFLAGS"
+SVN_STRIP_FLAG(SWIG_CPPFLAGS, [-no-cpp-precomp ])
+AC_SUBST([SWIG_CPPFLAGS])
+
 dnl Since this is used only on Unix-y systems, define the path separator as '/'
 AC_DEFINE_UNQUOTED(SVN_PATH_LOCAL_SEPARATOR, '/',
         [Defined to be the path separator used on your local filesystem])

Propchange: subversion/branches/1.8.x-r1536931/configure.ac
------------------------------------------------------------------------------
  Merged /subversion/branches/1.8.x-issue4437/configure.ac:r1567249-1591140
  Merged /subversion/branches/1.8.x-r1579588/configure.ac:r1579589-1591112
  Merged /subversion/branches/1.8.x-apr-0.9/configure.ac:r1585493-1589570
  Merged /subversion/trunk/configure.ac:r1535610,1577200
  Merged /subversion/branches/1.8.x/configure.ac:r1536934-1591142

Modified: subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.cpp
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.cpp?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.cpp (original)
+++ subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.cpp Tue Apr 29 23:36:43 2014
@@ -418,7 +418,7 @@ JNIUtil::putErrorsInTrace(svn_error_t *e
   env->DeleteLocalRef(jfileName);
 }
 
-void JNIUtil::handleSVNError(svn_error_t *err)
+void JNIUtil::wrappedHandleSVNError(svn_error_t *err)
 {
   std::string msg;
   assembleErrorMessage(svn_error_purge_tracing(err), 0, APR_SUCCESS, msg);
@@ -546,7 +546,16 @@ void JNIUtil::handleSVNError(svn_error_t
 #endif
 
   env->Throw(static_cast<jthrowable>(env->PopLocalFrame(nativeException)));
+}
 
+void JNIUtil::handleSVNError(svn_error_t *err)
+{
+  try {
+    wrappedHandleSVNError(err);
+  } catch (...) {
+    svn_error_clear(err);
+    throw;
+  }
   svn_error_clear(err);
 }
 
@@ -646,28 +655,42 @@ bool JNIUtil::isJavaExceptionThrown()
 const char *
 JNIUtil::thrownExceptionToCString(SVN::Pool &in_pool)
 {
-  const char *msg;
+  const char *msg = NULL;
   JNIEnv *env = getEnv();
+  apr_pool_t *pool = in_pool.getPool();
   if (env->ExceptionCheck())
     {
       jthrowable t = env->ExceptionOccurred();
-      static jmethodID getMessage = 0;
-      if (getMessage == 0)
+      jclass cls = env->GetObjectClass(t);
+
+      jstring jclass_name;
+      {
+        jmethodID mid = env->GetMethodID(cls, "getClass", "()Ljava/lang/Class;");
+        jobject clsobj = env->CallObjectMethod(t, mid);
+        jclass basecls = env->GetObjectClass(clsobj);
+        mid = env->GetMethodID(basecls, "getName", "()Ljava/lang/String;");
+        jclass_name = (jstring) env->CallObjectMethod(clsobj, mid);
+      }
+
+      jstring jmessage;
+      {
+        jmethodID mid = env->GetMethodID(cls, "getMessage",
+                                         "()Ljava/lang/String;");
+        jmessage = (jstring) env->CallObjectMethod(t, mid);
+      }
+
+      JNIStringHolder class_name(jclass_name);
+      if (jmessage)
         {
-          jclass clazz = env->FindClass("java/lang/Throwable");
-          getMessage = env->GetMethodID(clazz, "getMessage",
-                                        "(V)Ljava/lang/String;");
-          env->DeleteLocalRef(clazz);
+          JNIStringHolder message(jmessage);
+          msg = apr_pstrcat(pool,
+                            static_cast<const char*>(class_name), ": ",
+                            static_cast<const char*>(message), NULL);
         }
-      jstring jmsg = (jstring) env->CallObjectMethod(t, getMessage);
-      JNIStringHolder tmp(jmsg);
-      msg = tmp.pstrdup(in_pool.getPool());
+      else
+        msg = class_name.pstrdup(pool);
       // ### Conditionally add t.printStackTrace() to msg?
     }
-  else
-    {
-      msg = NULL;
-    }
   return msg;
 }
 

Modified: subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/bindings/javahl/native/JNIUtil.h Tue Apr 29 23:36:43 2014
@@ -141,6 +141,7 @@ class JNIUtil
   enum { noLog, errorLog, exceptionLog, entryLog } LogLevel;
 
  private:
+  static void wrappedHandleSVNError(svn_error_t *err);
   static void assembleErrorMessage(svn_error_t *err, int depth,
                                    apr_status_t parent_apr_err,
                                    std::string &buffer);

Modified: subversion/branches/1.8.x-r1536931/subversion/bindings/swig/core.i
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/bindings/swig/core.i?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/bindings/swig/core.i (original)
+++ subversion/branches/1.8.x-r1536931/subversion/bindings/swig/core.i Tue Apr 29 23:36:43 2014
@@ -827,7 +827,6 @@ svn_swig_pl_set_current_pool (apr_pool_t
 
 
 
-#ifdef SVN_AUTH_PARAM_GNOME_KEYRING_UNLOCK_PROMPT_FUNC
 %inline %{
 /* Helper function to set the gnome-keyring unlock prompt function. This
  * C function accepts an auth baton, a function and a prompt baton, but
@@ -851,7 +850,6 @@ static void svn_auth_set_gnome_keyring_u
                            prompt_baton);
 }
 %}
-#endif
 
 #if defined(SWIGPERL) || defined(SWIGRUBY)
 %include svn_md5_h.swg

Modified: subversion/branches/1.8.x-r1536931/subversion/bindings/swig/perl/native/Makefile.PL.in
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/bindings/swig/perl/native/Makefile.PL.in?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/bindings/swig/perl/native/Makefile.PL.in (original)
+++ subversion/branches/1.8.x-r1536931/subversion/bindings/swig/perl/native/Makefile.PL.in Tue Apr 29 23:36:43 2014
@@ -45,10 +45,17 @@ my @ldpaths = (abs_path($swig_builddir) 
 my @ldmodules = map {"-lsvn_$_-1"} (@modules, qw/diff subr/);
 
 my $apr_shlib_path_var = '@SVN_APR_SHLIB_PATH_VAR@';
-my $cppflags = '@CPPFLAGS@';
-my $cflags = '@CFLAGS@';
+my $cppflags = <<'EOT';
+@CPPFLAGS@
+EOT
+my $cflags = <<'EOT';
+@CFLAGS@
+EOT
 my $includes = '@SVN_APR_INCLUDES@ @SVN_APRUTIL_INCLUDES@';
 
+chomp($cppflags);
+chomp($cflags);
+
 # Avoid this bug in SWIG:
 # https://sourceforge.net/tracker/?func=detail&aid=3571361&group_id=1645&atid=101645
 # SWIG is using C++ style comments in an extern "C" code.

Modified: subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c (original)
+++ subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c Tue Apr 29 23:36:43 2014
@@ -1192,6 +1192,7 @@ DEFINE_DUP(auth_ssl_server_cert_info)
 DEFINE_DUP(wc_entry)
 DEFINE_DUP(client_diff_summarize)
 DEFINE_DUP(dirent)
+DEFINE_DUP(log_entry)
 DEFINE_DUP_NO_CONVENIENCE(client_commit_item3)
 DEFINE_DUP_NO_CONVENIENCE(client_proplist_item)
 DEFINE_DUP_NO_CONVENIENCE(wc_external_item2)
@@ -2155,9 +2156,7 @@ svn_swig_rb_log_entry_receiver(void *bat
 
         cbb.receiver = proc;
         cbb.message = id_call;
-        cbb.args = rb_ary_new3(1,
-                               c2r_swig_type((void *)entry,
-                                             (void *)"svn_log_entry_t *"));
+        cbb.args = rb_ary_new3(1, c2r_log_entry__dup(entry));
         invoke_callback_handle_error((VALUE)(&cbb), rb_pool, &err);
     }
     return err;

Modified: subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/test/test_client.rb
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/test/test_client.rb?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/test/test_client.rb (original)
+++ subversion/branches/1.8.x-r1536931/subversion/bindings/swig/ruby/test/test_client.rb Tue Apr 29 23:36:43 2014
@@ -2262,7 +2262,6 @@ class SvnClientTest < Test::Unit::TestCa
         end
       end
       config = Svn::Core::Config.config(@config_path)
-      assert_nil(ctx.config)
       assert_equal(options, config[Svn::Core::CONFIG_CATEGORY_SERVERS].to_hash)
       ctx.config = config
       assert_equal(options,

Modified: subversion/branches/1.8.x-r1536931/subversion/bindings/swig/svn_client.i
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/bindings/swig/svn_client.i?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/bindings/swig/svn_client.i (original)
+++ subversion/branches/1.8.x-r1536931/subversion/bindings/swig/svn_client.i Tue Apr 29 23:36:43 2014
@@ -395,7 +395,13 @@ Callback: svn_client_diff_summarize_func
   svn_client_ctx_t(apr_pool_t *pool) {
     svn_error_t *err;
     svn_client_ctx_t *self;
-    err = svn_client_create_context(&self, pool);
+    apr_hash_t *cfg_hash;
+
+    err = svn_config_get_config(&cfg_hash, NULL, pool);
+    if (err)
+      svn_swig_rb_handle_svn_error(err);
+
+    err = svn_client_create_context2(&self, cfg_hash, pool);
     if (err)
       svn_swig_rb_handle_svn_error(err);
     return self;
@@ -512,7 +518,13 @@ svn_client_set_config(svn_client_ctx_t *
                       apr_hash_t *config,
                       apr_pool_t *pool)
 {
-  ctx->config = config;
+  svn_error_t *err;
+
+  apr_hash_clear(ctx->config);
+  err = svn_config_copy_config(&ctx->config, config,
+                               apr_hash_pool_get(ctx->config));
+  if (err)
+    svn_swig_rb_handle_svn_error(err);
   return Qnil;
 }
 

Modified: subversion/branches/1.8.x-r1536931/subversion/include/private/svn_auth_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/private/svn_auth_private.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/private/svn_auth_private.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/private/svn_auth_private.h Tue Apr 29 23:36:43 2014
@@ -37,6 +37,24 @@
 extern "C" {
 #endif /* __cplusplus */
 
+/** SSL server authority verification credential type.
+ *
+ * The followin auth parameters are available to the providers:
+ *
+ * - @c SVN_AUTH_PARAM_SSL_SERVER_FAILURES (@c apr_uint32_t*)
+ * - @c SVN_AUTH_PARAM_SSL_SERVER_CERT_INFO
+ *      (@c svn_auth_ssl_server_cert_info_t*)
+ *
+ * The following optional auth parameters are relevant to the providers:
+ *
+ * - @c SVN_AUTH_PARAM_NO_AUTH_CACHE (@c void*)
+ *
+ * @since New in 1.9.
+ */
+#define SVN_AUTH_CRED_SSL_SERVER_AUTHORITY "svn.ssl.server.authority"
+
+
+
 /* If you add a password type for a provider which stores
  * passwords on disk in encrypted form, remember to update
  * svn_auth__simple_save_creds_helper. Otherwise it will be
@@ -213,6 +231,25 @@ svn_auth__ssl_client_cert_pw_set(svn_boo
                                  svn_boolean_t non_interactive,
                                  apr_pool_t *pool);
 
+#if (defined(WIN32) && !defined(__MINGW32__)) || defined(DOXYGEN)
+/**
+ * Set @a *provider to an authentication provider that implements
+ * ssl authority verification via the Windows CryptoApi.
+ *
+ * This provider automatically validates authority certificates with
+ * the CryptoApi, like Internet Explorer and the Windows network API do.
+ * This allows the rollout of root certificates via Windows Domain
+ * policies, instead of Subversion specific configuration.
+ *
+ * @note This function is only available on Windows.
+ */
+void
+svn_auth__get_windows_ssl_server_authority_provider(
+                            svn_auth_provider_object_t **provider,
+                            apr_pool_t *pool);
+#endif
+
+
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */

Modified: subversion/branches/1.8.x-r1536931/subversion/include/private/svn_cache.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/private/svn_cache.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/private/svn_cache.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/private/svn_cache.h Tue Apr 29 23:36:43 2014
@@ -182,6 +182,10 @@ typedef struct svn_cache__info_t
  * if they are strings.  Cached values will be copied in and out of
  * the cache using @a serialize_func and @a deserialize_func, respectively.
  *
+ * If @a deserialize_func is NULL, then the data is returned as an
+ * svn_stringbuf_t; if @a serialize_func is NULL, then the data is
+ * assumed to be an svn_stringbuf_t.
+ *
  * The cache stores up to @a pages * @a items_per_page items at a
  * time.  The exact cache invalidation strategy is not defined here,
  * but in general, a lower value for @a items_per_page means more
@@ -224,7 +228,7 @@ svn_cache__create_inprocess(svn_cache__t
  * other caches.  @a *cache_p will be allocated in @a result_pool.
  *
  * If @a deserialize_func is NULL, then the data is returned as an
- * svn_string_t; if @a serialize_func is NULL, then the data is
+ * svn_stringbuf_t; if @a serialize_func is NULL, then the data is
  * assumed to be an svn_stringbuf_t.
  *
  * These caches are always thread safe.
@@ -309,7 +313,7 @@ svn_cache__membuffer_cache_create(svn_me
  * this cache from other caches.  @a *cache_p will be allocated in @a result_pool.
  *
  * If @a deserialize_func is NULL, then the data is returned as an
- * svn_string_t; if @a serialize_func is NULL, then the data is
+ * svn_stringbuf_t; if @a serialize_func is NULL, then the data is
  * assumed to be an svn_stringbuf_t.
  *
  * If @a thread_safe is true, and APR is compiled with threads, all

Modified: subversion/branches/1.8.x-r1536931/subversion/include/private/svn_dep_compat.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/private/svn_dep_compat.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/private/svn_dep_compat.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/private/svn_dep_compat.h Tue Apr 29 23:36:43 2014
@@ -78,6 +78,7 @@ void svn_hash__clear(struct apr_hash_t *
 #if !APR_VERSION_AT_LEAST(1,0,0)
 #define APR_UINT64_C(val) UINT64_C(val)
 #define APR_FPROT_OS_DEFAULT APR_OS_DEFAULT
+#define apr_hash_make_custom(pool,hash_func) apr_hash_make(pool)
 #endif
 
 #if !APR_VERSION_AT_LEAST(1,3,0)
@@ -114,6 +115,12 @@ typedef apr_uint32_t apr_uintptr_t;
 #define SVN_LOCK_IS_BUSY(x) APR_STATUS_IS_EBUSY(x)
 #endif
 
+#if !APR_VERSION_AT_LEAST(1,4,0)
+#ifndef apr_time_from_msec
+#define apr_time_from_msec(msec) ((apr_time_t)(msec) * 1000)
+#endif
+#endif
+
 /**
  * Check at compile time if the Serf version is at least a certain
  * level.

Modified: subversion/branches/1.8.x-r1536931/subversion/include/private/svn_diff_tree.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/private/svn_diff_tree.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/private/svn_diff_tree.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/private/svn_diff_tree.h Tue Apr 29 23:36:43 2014
@@ -20,13 +20,13 @@
  * ====================================================================
  * @endcopyright
  *
- * @file svn_wc.h
+ * @file svn_diff_tree.h
  * @brief Generic diff handler. Replacing the old svn_wc_diff_callbacks4_t
  * infrastructure
  */
 
-#ifndef SVN_DIFF_PROCESSOR_H
-#define SVN_DIFF_PROCESSOR_H
+#ifndef SVN_DIFF_TREE_H
+#define SVN_DIFF_TREE_H
 
 #include "svn_types.h"
 
@@ -353,5 +353,5 @@ svn_diff__source_create(svn_revnum_t rev
 }
 #endif /* __cplusplus */
 
-#endif  /* SVN_DIFF_PROCESSOR_H */
+#endif  /* SVN_DIFF_TREE_H */
 

Modified: subversion/branches/1.8.x-r1536931/subversion/include/private/svn_mutex.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/private/svn_mutex.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/private/svn_mutex.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/private/svn_mutex.h Tue Apr 29 23:36:43 2014
@@ -21,7 +21,7 @@
  * @endcopyright
  *
  * @file svn_mutex.h
- * @brief Strutures and functions for mutual exclusion
+ * @brief Structures and functions for mutual exclusion
  */
 
 #ifndef SVN_MUTEX_H
@@ -72,7 +72,7 @@ svn_mutex__init(svn_mutex__t **mutex,
  * thread to release the mutex again. Recursive locking are not supported.
  *
  * @note You should use #SVN_MUTEX__WITH_LOCK instead of explicit lock
- * aquisition and release.
+ * acquisition and release.
  */
 svn_error_t *
 svn_mutex__lock(svn_mutex__t *mutex);
@@ -88,19 +88,19 @@ svn_mutex__lock(svn_mutex__t *mutex);
  * reported in the return value.
  *
  * @note You should use #SVN_MUTEX__WITH_LOCK instead of explicit lock
- * aquisition and release.
+ * acquisition and release.
  */
 svn_error_t *
 svn_mutex__unlock(svn_mutex__t *mutex,
                   svn_error_t *err);
 
-/** Aquires the @a mutex, executes the expression @a expr and finally
+/** Acquires the @a mutex, executes the expression @a expr and finally
  * releases the @a mutex. If any of these steps fail, the function using
  * this macro will return an #svn_error_t. This macro guarantees that
  * the @a mutex will always be unlocked again if it got locked successfully
  * by the first step.
  *
- * @note Prefer using this macro instead of explicit lock aquisition and
+ * @note Prefer using this macro instead of explicit lock acquisition and
  * release.
  */
 #define SVN_MUTEX__WITH_LOCK(mutex, expr)               \

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_auth.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_auth.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_auth.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_auth.h Tue Apr 29 23:36:43 2014
@@ -966,7 +966,10 @@ svn_auth_get_keychain_ssl_client_cert_pw
   apr_pool_t *pool);
 #endif /* DARWIN || DOXYGEN */
 
-#if (!defined(DARWIN) && !defined(WIN32)) || defined(DOXYGEN)
+/* Note that the gnome keyring unlock prompt related items below must be
+ * declared for all platforms in order to allow SWIG interfaces to be
+ * used regardless of the platform. */
+
 /** A type of callback function for obtaining the GNOME Keyring password.
  *
  * In this callback, the client should ask the user for default keyring
@@ -996,7 +999,7 @@ typedef svn_error_t *(*svn_auth_gnome_ke
  * @c *SVN_AUTH_PARAM_GNOME_KEYRING_UNLOCK_PROMPT_FUNC. */
 #define SVN_AUTH_PARAM_GNOME_KEYRING_UNLOCK_PROMPT_BATON "gnome-keyring-unlock-prompt-baton"
 
-
+#if (!defined(DARWIN) && !defined(WIN32)) || defined(DOXYGEN)
 /**
  * Get libsvn_auth_gnome_keyring version information.
  *

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_client.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_client.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_client.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_client.h Tue Apr 29 23:36:43 2014
@@ -439,9 +439,17 @@ typedef struct svn_client_commit_info_t
 #define SVN_CLIENT_COMMIT_ITEM_TEXT_MODS   0x04
 #define SVN_CLIENT_COMMIT_ITEM_PROP_MODS   0x08
 #define SVN_CLIENT_COMMIT_ITEM_IS_COPY     0x10
-/** @since New in 1.2. */
+/** One of the flags for a commit item.  The node has a lock token that
+ * should be released after a successful commit and, if the node is also
+ * modified, transferred to the server as part of the commit process.
+ *
+ * @since New in 1.2. */
 #define SVN_CLIENT_COMMIT_ITEM_LOCK_TOKEN  0x20
-/** @since New in 1.8. */
+/** One of the flags for a commit item.  The node is the 'moved here'
+ * side of a local move.  This is used to check and enforce that the
+ * other side of the move is also included in the commit.
+ *
+ * @since New in 1.8. */
 #define SVN_CLIENT_COMMIT_ITEM_MOVED_HERE  0x40
 /** @} */
 
@@ -6449,7 +6457,7 @@ svn_client_open_ra_session2(svn_ra_sessi
                            apr_pool_t *result_pool,
                            apr_pool_t *scratch_pool);
 
-/** Similar to svn_client_open_ra_session(), but with @ wri_abspath
+/** Similar to svn_client_open_ra_session2(), but with @ wri_abspath
  * always passed as NULL, and with the same pool used as both @a
  * result_pool and @a scratch_pool.
  *

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_config.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_config.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_config.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_config.h Tue Apr 29 23:36:43 2014
@@ -98,8 +98,11 @@ typedef struct svn_config_t svn_config_t
 
 #define SVN_CONFIG_CATEGORY_CONFIG          "config"
 #define SVN_CONFIG_SECTION_AUTH                 "auth"
+/** @since New in 1.6. */
 #define SVN_CONFIG_OPTION_PASSWORD_STORES           "password-stores"
+/** @since New in 1.6. */
 #define SVN_CONFIG_OPTION_KWALLET_WALLET            "kwallet-wallet"
+/** @since New in 1.6. */
 #define SVN_CONFIG_OPTION_KWALLET_SVN_APPLICATION_NAME_WITH_PID "kwallet-svn-application-name-with-pid"
 /** @since New in 1.8. */
 #define SVN_CONFIG_OPTION_SSL_CLIENT_CERT_FILE_PROMPT "ssl-client-cert-file-prompt"
@@ -123,7 +126,9 @@ typedef struct svn_config_t svn_config_t
 #define SVN_CONFIG_OPTION_NO_UNLOCK                 "no-unlock"
 #define SVN_CONFIG_OPTION_MIMETYPES_FILE            "mime-types-file"
 #define SVN_CONFIG_OPTION_PRESERVED_CF_EXTS         "preserved-conflict-file-exts"
+/** @since New in 1.7. */
 #define SVN_CONFIG_OPTION_INTERACTIVE_CONFLICTS     "interactive-conflicts"
+/** @since New in 1.7. */
 #define SVN_CONFIG_OPTION_MEMORY_CACHE_SIZE         "memory-cache-size"
 #define SVN_CONFIG_SECTION_TUNNELS              "tunnels"
 #define SVN_CONFIG_SECTION_AUTO_PROPS           "auto-props"
@@ -168,10 +173,12 @@ typedef struct svn_config_t svn_config_t
 /* We want this to be printed on two lines in the generated config file,
  * but we don't want the # character to end up in the variable.
  */
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
 #define SVN_CONFIG__DEFAULT_GLOBAL_IGNORES_LINE_1 \
   "*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__"
 #define SVN_CONFIG__DEFAULT_GLOBAL_IGNORES_LINE_2 \
   "*.rej *~ #*# .#* .*.swp .DS_Store"
+#endif
 
 #define SVN_CONFIG_DEFAULT_GLOBAL_IGNORES \
   SVN_CONFIG__DEFAULT_GLOBAL_IGNORES_LINE_1 " " \

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_diff.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_diff.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_diff.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_diff.h Tue Apr 29 23:36:43 2014
@@ -911,8 +911,8 @@ typedef struct svn_diff_hunk_t svn_diff_
 
 /**
  * Allocate @a *stringbuf in @a result_pool, and read into it one line
- * of the diff text of @a hunk. The first line returned is the hunk header.
- * Any subsequent lines are unidiff data (starting with '+', '-', or ' ').
+ * of the diff text of @a hunk. The hunk header is not returned only the
+ * unidiff data lines (starting with '+', '-', or ' ') are returned.  
  * If the @a hunk is being interpreted in reverse (i.e. the reverse
  * parameter of svn_diff_parse_next_patch() was @c TRUE), the diff
  * text will be returned in reversed form.
@@ -922,6 +922,13 @@ typedef struct svn_diff_hunk_t svn_diff_
  * hunk does not end with a newline character and @a eol is not NULL.
  * Temporary allocations will be performed in @a scratch_pool.
  *
+ * @note The hunk header information can be retrievied with the following
+ * functions: 
+ * @see svn_diff_hunk_get_original_start()
+ * @see svn_diff_hunk_get_original_length()
+ * @see svn_diff_hunk_get_modified_start()
+ * @see svn_diff_hunk_get_modified_length()
+ *
  * @since New in 1.7.
  */
 svn_error_t *

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_dirent_uri.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_dirent_uri.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_dirent_uri.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_dirent_uri.h Tue Apr 29 23:36:43 2014
@@ -646,8 +646,8 @@ svn_dirent_skip_ancestor(const char *par
 
 /** Return the relative path part of @a child_relpath that is below
  * @a parent_relpath, or just "" if @a parent_relpath is equal to
- * @a child_relpath. If @a child_relpath is not below or equal to
- * @a parent_relpath, return NULL.
+ * @a child_relpath. If @a child_relpath is not below @a parent_relpath,
+ * return NULL.
  *
  * @since New in 1.7.
  */
@@ -657,7 +657,7 @@ svn_relpath_skip_ancestor(const char *pa
 
 /** Return the URI-decoded relative path of @a child_uri that is below
  * @a parent_uri, or just "" if @a parent_uri is equal to @a child_uri. If
- * @a child_uri is not below or equal to @a parent_uri, return NULL.
+ * @a child_uri is not below @a parent_uri, return NULL.
  *
  * Allocate the result in @a result_pool.
  *

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_io.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_io.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_io.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_io.h Tue Apr 29 23:36:43 2014
@@ -182,9 +182,10 @@ svn_io_check_resolved_path(const char *p
  * may be @c NULL.  If @a file is @c NULL, the file will be created but not
  * open.
  *
- * If @a delete_when is #svn_io_file_del_on_close, then the @c APR_DELONCLOSE
- * flag will be used when opening the file.  The @c APR_BUFFERED flag will
- * always be used.
+ * The file will be deleted according to @a delete_when.  If that is
+ * #svn_io_file_del_on_pool_cleanup, it refers to @a result_pool.
+ *
+ * The @c APR_BUFFERED flag will always be used when opening the file.
  *
  * The first attempt will just append @a suffix.  If the result is not
  * a unique name, then subsequent attempts will append a dot,
@@ -248,8 +249,9 @@ svn_io_open_uniquely_named(apr_file_t **
  * be possible to atomically rename the resulting file due to cross-device
  * issues.)
  *
- * The file will be deleted according to @a delete_when.  If @a delete_when
- * is @c svn_io_file_del_on_close and @a file is @c NULL, the file will be
+ * The file will be deleted according to @a delete_when.  If that is
+ * #svn_io_file_del_on_pool_cleanup, it refers to @a result_pool.  If it
+ * is #svn_io_file_del_on_close and @a file is @c NULL, the file will be
  * deleted before this function returns.
  *
  * When passing @c svn_io_file_del_none please don't forget to eventually
@@ -917,7 +919,7 @@ svn_stream_empty(apr_pool_t *pool);
 /** Return a stream allocated in @a pool which forwards all requests
  * to @a stream.  Destruction is explicitly excluded from forwarding.
  *
- * @see notes/destruction-of-stacked-resources
+ * @see http://subversion.apache.org/docs/community-guide/conventions.html#destruction-of-stacked-resources
  *
  * @since New in 1.4.
  */
@@ -972,7 +974,8 @@ svn_stream_open_writable(svn_stream_t **
  * be possible to atomically rename the resulting file due to cross-device
  * issues.)
  *
- * The file will be deleted according to @a delete_when.
+ * The file will be deleted according to @a delete_when.  If that is
+ * #svn_io_file_del_on_pool_cleanup, it refers to @a result_pool.
  *
  * Temporary allocations will be performed in @a scratch_pool.
  *
@@ -1589,8 +1592,8 @@ svn_io_stat_dirent2(const svn_io_dirent2
                     apr_pool_t *scratch_pool);
 
 
-/** Similar to svn_io_stat_dirent2, but always passes FALSE for
- * verify_truename.
+/** Similar to svn_io_stat_dirent2(), but always passes FALSE for
+ * @a verify_truename.
  *
  * @since New in 1.7.
  * @deprecated Provided for backwards compatibility with the 1.7 API.
@@ -1681,7 +1684,7 @@ svn_io_dir_walk(const char *dirname,
  *
  * @note An APR bug affects Windows: passing a NULL @a env does not
  * guarantee the invoked program to run with an empty environment when
- * @a inherits is FALSE, the program may inherit its parent's environment.
+ * @a inherit is FALSE, the program may inherit its parent's environment.
  * Explicitly pass an empty @a env to get an empty environment.
  *
  * @since New in 1.8.

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_repos.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_repos.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_repos.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_repos.h Tue Apr 29 23:36:43 2014
@@ -298,8 +298,7 @@ typedef struct svn_repos_notify_t
    * the revision which just completed. */
   svn_revnum_t revision;
 
-  /** For #svn_repos_notify_warning, the warning object. Must be cleared
-      by the consumer of the notification. */
+  /** For #svn_repos_notify_warning, the warning object. */
   const char *warning_str;
   svn_repos_notify_warning_t warning;
 

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_version.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_version.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_version.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_version.h Tue Apr 29 23:36:43 2014
@@ -72,7 +72,7 @@ extern "C" {
  *
  * @since New in 1.1.
  */
-#define SVN_VER_PATCH      5
+#define SVN_VER_PATCH      9
 
 
 /** @deprecated Provided for backward compatibility with the 1.0 API. */

Modified: subversion/branches/1.8.x-r1536931/subversion/include/svn_wc.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/include/svn_wc.h?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/include/svn_wc.h (original)
+++ subversion/branches/1.8.x-r1536931/subversion/include/svn_wc.h Tue Apr 29 23:36:43 2014
@@ -2109,9 +2109,8 @@ typedef struct svn_wc_conflict_result_t
  * Allocate an #svn_wc_conflict_result_t structure in @a pool,
  * initialize and return it.
  *
- * Set the @c choice field of the structure to @a choice, and @c
- * merged_file to @a merged_file.  Set all other fields to their @c
- * _unknown, @c NULL or invalid value, respectively. Make only a shallow
+ * Set the @c choice field of the structure to @a choice, @c merged_file
+ * to @a merged_file, and @c save_merged to false.  Make only a shallow
  * copy of the pointer argument @a merged_file.
  *
  * @since New in 1.5.
@@ -4078,6 +4077,9 @@ typedef void (*svn_wc_status_func_t)(voi
  * @a ignore_patterns is an array of file patterns matching
  * unversioned files to ignore for the purposes of status reporting,
  * or @c NULL if the default set of ignorable file patterns should be used.
+ * Patterns from #SVN_PROP_IGNORE (and, as of 1.8,
+ * #SVN_PROP_INHERITABLE_IGNORES) properties are always used, even if not
+ * specified in @a ignore_patterns.
  *
  * If @a cancel_func is non-NULL, call it with @a cancel_baton while walking
  * to determine if the client has canceled the operation.

Modified: subversion/branches/1.8.x-r1536931/subversion/libsvn_client/commit_util.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/libsvn_client/commit_util.c?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/libsvn_client/commit_util.c (original)
+++ subversion/branches/1.8.x-r1536931/subversion/libsvn_client/commit_util.c Tue Apr 29 23:36:43 2014
@@ -892,7 +892,7 @@ harvest_status_callback(void *status_bat
   if (matches_changelists
       && (is_harvest_root || baton->changelists)
       && state_flags
-      && is_added
+      && (is_added || (is_deleted && is_op_root && status->copied))
       && baton->danglers)
     {
       /* If a node is added, its parent must exist in the repository at the

Modified: subversion/branches/1.8.x-r1536931/subversion/libsvn_client/copy.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-r1536931/subversion/libsvn_client/copy.c?rev=1591144&r1=1591143&r2=1591144&view=diff
==============================================================================
--- subversion/branches/1.8.x-r1536931/subversion/libsvn_client/copy.c (original)
+++ subversion/branches/1.8.x-r1536931/subversion/libsvn_client/copy.c Tue Apr 29 23:36:43 2014
@@ -314,6 +314,8 @@ do_wc_to_wc_moves(svn_boolean_t *timesta
     {
       const char *src_parent_abspath;
       svn_boolean_t lock_src, lock_dst;
+      const char *src_wcroot_abspath;
+      const char *dst_wcroot_abspath;
 
       svn_client__copy_pair_t *pair = APR_ARRAY_IDX(copy_pairs, i,
                                                     svn_client__copy_pair_t *);
@@ -326,6 +328,13 @@ do_wc_to_wc_moves(svn_boolean_t *timesta
       src_parent_abspath = svn_dirent_dirname(pair->src_abspath_or_url,
                                               iterpool);
 
+      SVN_ERR(svn_wc__get_wcroot(&src_wcroot_abspath,
+                                 ctx->wc_ctx, src_parent_abspath,
+                                 iterpool, iterpool));
+      SVN_ERR(svn_wc__get_wcroot(&dst_wcroot_abspath,
+                                 ctx->wc_ctx, pair->dst_parent_abspath,
+                                 iterpool, iterpool));
+
       /* We now need to lock the right combination of batons.
          Four cases:
            1) src_parent == dst_parent
@@ -334,15 +343,18 @@ do_wc_to_wc_moves(svn_boolean_t *timesta
            4) src_parent and dst_parent are disjoint
          We can handle 1) as either 2) or 3) */
       if (strcmp(src_parent_abspath, pair->dst_parent_abspath) == 0
-          || svn_dirent_is_child(src_parent_abspath, pair->dst_parent_abspath,
-                                 iterpool))
+          || (svn_dirent_is_child(src_parent_abspath, pair->dst_parent_abspath,
+                                  NULL)
+              && !svn_dirent_is_child(src_parent_abspath, dst_wcroot_abspath,
+                                      NULL)))
         {
           lock_src = TRUE;
           lock_dst = FALSE;
         }
       else if (svn_dirent_is_child(pair->dst_parent_abspath,
-                                   src_parent_abspath,
-                                   iterpool))
+                                   src_parent_abspath, NULL)
+               && !svn_dirent_is_child(pair->dst_parent_abspath,
+                                       src_wcroot_abspath, NULL))
         {
           lock_src = FALSE;
           lock_dst = TRUE;