Checkout Tools
  • last updated 4 hours ago
Constraints: committers
Constraints: files
Constraints: dates

Changeset 862526 is being indexed.

Commit test

Revert small part of r22444.

* subversion/tests/cmdline/

(update_wc_on_windows_drive): splitfields() can only be called on string.

On the multiple moves branch:

Implement multiple repo->wc copies.

* subversion/libsvn_client/copy.c

(repos_to_wc_copy_single): Convenience function to copy one src and one dst

from a repo to a wc. Mostly copied from repos_to_wc_copy.

(repos_to_wc_copy): Replace src and dst args with copy_pairs array. Do

checks for each pair and call repos_to_wc_copy_single to perform the copy.

(setup_copy): Call repos_to_wc_copy with the copy_pairs array arg.

* subversion/tests/cmdline/

(test_list): Unmark copy_multiple_repo_wc as XFail.

A bugfix for the svn-status-custom-hide-function handling

* trunk/contrib/client-side/psvn/psvn.el:

(svn-status-custom-hide-function): Added a docstring for that variable

(svn-status-get-file-name-buffer-position): Consider

svn-status-line-info->hide-because-custom-hide-function also

(svn-status-line-info->hide-because-custom-hide-function): New function.

Detects, if svn-status-custom-hide-function would hide this line.

Thanks to David Abrahams <> for his report.

svntest: Doc improvement.

* subversion/tests/cmdline/svntest/

(compare_and_display_lines): Expand doc string.

Tweak formatting for consistency. No functional change.

* subversion/tests/cmdline/svntest/

(run_and_verify_svn): Adjust style for "if" block.

Backport r22417 from trunk into the 1.4.x branch, fixing a xlate

handle caching bug to prevent crashes on Win32 (at least).

Votes: +1: djh, zhakov, dlr

    • ?
* STATUS: Vote for r22417 (approving) and r22440.
Avoid importing unused Python libraries in the black box regression


[ in subversion/tests/cmdline/ ]


















Do not import unused libraries.


Do not import unused libraries.

(check_diff_output): Use the string itself when invoking the

replace() function.


Do not import unused libraries.

(delete_file_in_moved_dir): Use the string itself when invoking the

strip() function.


Do not import unused libraries.

(update_wc_on_windows_drive): Use the string itself when invoking

the splitfields() function.

Patch by: bhuvan

(Tweaked by me.)

  1. … 5 more files in changeset.
Rename copy_pair struct to svn_client__copy_pair.

* subversion/libsvn_client/client.h

(copy_pair): Rename from this...

(svn_client__copy_pair): this.

* subversion/libsvn_client/copy.c

(wc_to_wc_copy, repos_to_repos_copy, setup_copy): Rename copy_pair to


Update to German translation

* subversion/po/de.po

applied and reviewed patch from Jens Seidel.

Patch by: Jens Seidel

Review by: me

* STATUS: Nominate r22440
Fix a crash bug when using automatic authentication protocols such as SSPI.

Neon automatically tries some auth protocols and bumps the attempt

count without using Subversion's callbacks, so we can't depend

on attempt == 0 the first time we are called.

Patch by: Stefan Kung <>

* subversion/libsvn_ra_dav/session.c

(request_auth): Don't depend on the attempt parameter being zero for

the first auth callback we get from neon, just check the auth state itself.

Remove stale comment.

* subversion/libsvn_ra_dav/ra_dav.h

(svn_ra_dav__request_dispatch): Remove comment about values which

are no longer in the parameter list; they're held in the request struct.

Remove what has become overengineering.

Note: *Some* callers want to know about the Location header,

but since the request now lives past the

svn_ra_dav__request_dispatch() call, they can simply query the value


* subversion/libsvn_ra_dav/ra_dav.h

* subversion/libsvn_ra_dav/util.c

(svn_ra_dav__request_interrogator): Obsoleted.

(svn_ra_dav__request_dispatch): Remove request interrogator and its baton.

(svn_ra_dav__request_get_location): New. Function to query the location

header without the manual free() hassle.

* subversion/libsvn_ra_dav/fetch.c

Adjust callers.

* subversion/libsvn_ra_dav/commit.c

Adjust callers.


checkout_resource): Eliminate manual tracking and free()-ing of the

Location header value.

Fix ordering problem: custom_get_ctx_t.ctype never gets set because

interrogate_for_content_type is run *after* the request+response

have been processed.

* subversion/libsvn_ra_dav/fetch.c

(custom_get_ctx_t): Remove 'err' and 'ctype' fields. Add 'req' field. We need

access to the connection object anyway.

(interrogate_for_content_type): Removed. Now obsolete.

(custom_get_request): Adapt for changed custom_get_ctx_t.

(fetch_file_reader): Fetch the content type itself. Store errors in

the request structure, making them the preferred error returned by

our custom request runner.

Don't accidentally mark an error as marshalled.

* subversion/libsvn_ra_dav/util.c

(end_err_element): Only set 'err' and 'marshalled_error'

if we actually have an error.

Fix basic_tests 28 failure.

* subversion/libsvn_ra_dav/util.c

(end_err_element): Promote after all of the error response has been read.

Found by: djh


* subversion/libsvn_ra_dav/commit.c: Remove stale comment.
On the multiple moves branch:

Add support for multiple repo->repo moves and copies.

* subversion/libsvn_client/copy.c

(path_driver_info): New.

(path_driver_cb_baton): Replace per-copy members with a hash to hold the action

to be taken on each path.

(path_driver_cb_func): Instead of using the path driver baton directly, use

the action hash to look up the action to be performed on a specific path.

(repos_to_repos_copy): Change the arguments and functionality to work on a

copy_pairs array, instead of a single src and dst.

* subversion/tests/cmdline/

(test_list): Unmark move_multiple_repo and copy_multiple_repo tests as XFail.

On the multiple moves branch:

Remove the use of a temporary variable.

Suggested by: Ivan Zhakov

* subversion/libsvn_client/copy.c

(setup_copy): Remove a once-used temporary variable in favor of cleaner syntax.

On the multiple moves branch:

Make wc_to_wc_copy work for an array of copy_pairs, implementing multiple moves

and copies for wc->wc operations.

* subversion/libsvn_client/copy.c

(wc_to_wc_copy_single): New function, mostly copied from the old wc_to_wc_copy.

(wc_to_wc_copy): Remove the src_path and dst_path args in favor or an array of

copy_pairs. Loop over the copy_pairs, calling wc_to_wc_copy_single for each


(setup_copy): Replace the src and dst args to wc_to_wc_copy with the copy_pairs


* subversion/tests/cmdline/

(test_list): Remove XFail designation for move_multiple_wc and


Fix checkout crash problem reported by djh.

* subversion/libsvn_client/checkout.c

(svn_client__checkout_internal): Fix pool problem, requests should

at least be executed from the session pool (or a child pool).

Adhere to APR pool cleanup API: NULL cleanups are not allowed,

use apr_pool_cleanup_null instead.

* subversion/libsvn_subr/error.c

* subversion/libsvn_ra_dav/util.c

* contrib/server-side/mod_dontdothat/mod_dontdothat.c

Replace NULL cleanup arguments with 'apr_pool_cleanup_null'.

Followup to r22424.

* subversion/libsvn_ra_dav/util.c

(svn_ra_dav__add_error_handler): Pass the baton instead of 'err'.

Followup to r22426. Because we are checking for src_path homogeneity in

libsvn_client, we do not need to check for it in the client.

* subversion/svn/copy-cmd.c

(svn_cl__copy): Remove check for src_path homogeneity.

Allow setup_copy() to accept multiple source arguments. If there is one

src_path, copy src_path to dst_path. If there is more than one src_path, then

copy all the src_paths as children of the dst_path. Checks to make sure all

the source paths are either all working copy paths or all repository URLs.

Also, introduce the concept of a copy_pair, which is a convenience structure

used to hold information about a particular src and dst pair.

With this patch, we still pass only one source and destination to each of the

*_copy functions, and the client commands still work on only the first and last

arguments. It does set us up for implementing multiple moves and copies in the

*_copy functions, though.

* subversion/libsvn_client/copy.c

(setup_copy): Change src_path arg from a single string to an array of strings.

Declare a couple of strings to hold the first src and dst, and update the

calls to the *_copy functions to use these strings.

(svn_client_copy3, svn_client_copy_into, svn_client_move4, svn_client_move,

svn_client_move_into): Update call to setup_copy to use an array for


* subversion/libsvn_client/client.h

(copy_pair): New.

* subversion/svn/move-cmd.c

(svn_cl__move): Fix accidental indentation change introduced in r22419.

Fix r22397 followup: As long as we don't completely switch to the new

paradigm, we need the error parser to be able to work without a

request structure.

* subversion/libsvn_ra_dav/util.c

(error_parser_baton_t): Don't directly take a request pointer,

work with pointers to the required fields instead.

(error_parser_create): Initialize baton fields to point to request fields.



error_parser_baton_cleanup): Adjust for new baton structure.

(svn_ra_dav__add_error_handler): Create new error parser baton.

* Subversion/1.4.x/STATUS: Vote for the r22417.