Ping. This updated submission has received no comments.
Gavin "Beau" Baumanis On 06/01/2010, at 10:53 PM, Daniel Näslund wrote: > On Wed, Dec 30, 2009 at 02:11:31PM +0000, Stefan Sperling wrote: >> On Wed, Dec 30, 2009 at 07:45:12AM +0100, Daniel Näslund wrote: >>> + err = svn_wc__node_get_url(&url, cb->ctx->wc_ctx, >>> + abs_parent_dir, cb->pool, cb->pool); >>> + >>> + /* If we're doing an 'svn export' the current dir will not be a >>> + working copy. We can't get the parent_dir. */ >>> + if (err) >>> + { >> >> More nitpicking :-P >> Indentation is off below: >> >>> + if (err->apr_err == SVN_ERR_WC_NOT_WORKING_COPY) >>> + { >>> + /* Get the URL of the parent directory by appending a portion of >>> + parent_dir to from_url. from_url is the URL for to_path and >>> + to_path is a substring of parent_dir, so append any characters >>> in >>> + parent_dir past strlen(to_path) to from_url (making sure to move >>> + past a '/' in parent_dir, otherwise svn_path_url_add_component() >>> + will error. */ >>> + len = strlen(cb->to_path); >>> + if (ib.parent_dir[len] == '/') >>> + ++len; >>> + ib.parent_dir_url = svn_path_url_add_component2(cb->from_url, >>> + ib.parent_dir + >>> len, >>> + cb->pool); >>> + svn_error_clear(err); >>> + } >>> + else >>> + return svn_error_return(err); >>> + } >>> + else >>> + ib.parent_dir_url = url; > > Fixed! > > [[[ > Fix issue #3390, relative externals not updated during switch. As a side > effect - allow externals hash diff functionality to be used with abspaths. > > * subversion/libsvn_client/switch.c > (svn_client__switch_internal): Pass in an external_func to > svn_wc_crawl_revision5(). > > * subversion/libsvn_client/externals.c > (handle_externals_desc_change): Get the url for parent_dir with > svn_wc__node_get_url(). Does not work for export where the > parent_dir has no url. Then we resort to the old way of adding the > parent_dir to the from_url. > > * subversion/tests/cmdline/externals_tests.py > (test_list): Remove XFail from switch_relative_external. > > Patch by: Daniel Näslund <daniel{_AT_}longitudo.com> > Review by: stsp, philip > ]]] > > Daniel > <i3390-v7.diff>