Re: SEGFAULT in 'svn pget' (no time to diagnose)
From: Blair Zajac <blair_at_orcaware.com>
Date: 2007-10-31 16:48:30 CET
Blair Zajac wrote:
So the problem is related to svn_opt_args_to_target_array2().
When a "." appears there, then
apr_err = apr_filepath_merge(&truenamed_target, "", apr_target,
ends up getting a "." and converts it into a "" so its canonical.
When a ".@BASE" appears, then it's not canonicalized into "@BASE" and because
The documentation for svn_opt_args_to_target_array2() states:
On each local path, canonicalize case and path separators, and
Which doesn't sound exactly the same as the path is just canonicalized. Maybe
So I see two choices:
1) Make svn_opt_args_to_target_array2() smarter and have it use
This requires no changes from the caller, but now
2) Leave svn_opt_args_to_target_array2() alone but iterate over the result of
This sounds messy.
While we're in svn_opt_args_to_target_array2(), a couple of questions:
If the target is a URL, then it does this:
/* strip any trailing '/' */
But this does nothing for a URL with a peg revision.
So I'm thinking of having the code use svn_opt_parse_path() before doing any
Is it safe to do that, given that paths are run through these steps? Are there
(peg_rev, path) = svn_opt_parse_path(path)
Blair
---------------------------------------------------------------------
|
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.