On Tue, 2009-12-08, Kannan wrote:
> Make a proper fix to resolve some deprecation warnings using
> `svn_path_url_add_component2()' by canonicalizing the base before
> passing to the above method.
Please split this patch into its two logical changes:
1. Ensure paths are canonical.
2. Upgrade ...add_component() to ...2().
> [in subversion/libsvn_ra_neon]
>
> * commit.c
> (get_version_url, create_activity, commit_add_dir, commit_add_file
> commit_close_file, add_child, commit_delete_entry): Use
> `svn_path_url_add_component2()'.
> (svn_ra_neon__get_commit_editor, checkout_resource, apply_revprops):
> Canonicalize the base before passing to
> `svn_path_url_add_component2()'.
>
> * props.c
> (svn_ra_neon__get_baseline_info): Canonicalize the base before
> passing to `svn_path_url_add_component2()'.
In subversion/libsvn_ra_neon/commit.c:
> @@ -1389,7 +1388,7 @@
> vcc, NULL,
> &svn_ra_neon__checked_in_prop, pool));
> baseline_rsrc.pool = pool;
> - baseline_rsrc.vsn_url = baseline_url->data;
> + baseline_rsrc.vsn_url = svn_uri_canonicalize(baseline_url->data, pool);
This is the wrong place to canonicalize the path. This path is coming
from the function svn_ra_neon__get_one_prop() so it should already be
canonical when it comes out of there.
> @@ -1452,6 +1451,8 @@
> /* ### should we perform an OPTIONS to validate the server we're about
> ### to talk to? */
>
> + cc->ras->act_coll = svn_uri_canonicalize(cc->ras->act_coll, pool);
> +
Same here... this should be made canonical where it is generated, before
it comes in to this function.
It would be great if you could trace the calls back to wherever the
non-canonical paths are generated, and fix them at that point.
Thanks,
- Julian
Received on 2009-12-10 17:08:32 CET