My improved patch for fixing the peg revision support while parsing repository
root urls. I consolidated what I had previously split into two parts at
Blair's request once I figured out that applying the first patch caused 3 test
failures as a result of improperly parsing peg revision for "real" targets.
The improvement here is using the new split_arg_at_peg_revision() function
inside svn_opt_parse_path(). This was suggested by Daniel Shahaf to further
reduce duplication of peg revision parsing.
[[[
Fix peg revision support for repository root urls to address issue #3193.
Move the duplicated peg revision parsing functionality from
svn_client_args_to_target_array() and svn_opt_args_to_target_array3() into
the common functions svn_opt__arg_canonicalize_url() and
svn_opt__arg_canonicalize_path().
* subversion/libsvn_subr/opt.c
(split_arg_at_peg_revision): New function.
(svn_opt__arg_canonicalize_url,
svn_opt__arg_canonicalize_path): Allow the input argument to contain a peg
revision specifier, and preserve it in the output utilizing
split_arg_at_peg_revision().
(svn_opt_parse_path): Replace in-line peg revision parsing with the new
split_arg_at_peg_revision() function.
(svn_opt_args_to_target_array3): Remove the peg revision preserving logic,
relying instead on the new peg revision support in
svn_opt__arg_canonicalize_path() and svn_opt__arg_canonicalize_url().
* subversion/include/private/svn_opt_private.h
(svn_opt__arg_canonicalize_url,
svn_opt__arg_canonicalize_path): Update the doc string to reflect the fact
that these functions can handle a peg revision in the input argument.
* subversion/libsvn_client/cmdline.c
(svn_client_args_to_target_array): Remove the peg revision preserving logic,
relying instead on the new peg support in svn_opt__arg_canonicalize_path()
and svn_opt__arg_canonicalize_url().
* subversion/tests/cmdline/basic_tests.py
(basic_relative_url_with_peg_revisions): New test functions.
(test_list): Call the new test function.
]]]
Troy
--
Beware of spyware. If you can, use the Firefox browser. - USA Today
Download now at http://getfirefox.com
Registered Linux User #354814 ( http://counter.li.org/)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-05-11 22:57:47 CEST