[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] v5 Fix #3390 Relative externals not updated during switch

From: Daniel Näslund <daniel_at_longitudo.com>
Date: Mon, 28 Dec 2009 15:36:46 +0100

On Mon, Dec 28, 2009 at 02:05:02PM +0000, Stefan Sperling wrote:
> > + svn_error_clear(err);
> > + }
> > + else if (err)
> > + svn_error_return(err);
>
> return svn_error_return(err);
> ^^^^^^

Fixed!

> > + else
> > + ib.parent_dir_url = url;
>
> And maybe write it like this?
>
> if (err)
> {
> if (err->apr_arr == SVN_ERR_WC_NOT_WORKING_COPY)
> {
> ...
> svn_error_clear(err);
> }
> else
> return svn_error_return(err);
> }
> else
> ib.parent_dir_url = url;

Done!

[[[
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
]]]

Received on 2009-12-28 15:38:08 CET

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.