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

Re: Error in abs-path handling in normalize_merge_sources()

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: Mon, 30 Nov 2009 11:28:50 -0500

Julian Foad wrote:
> Julian Foad wrote:
>> I spotted an error in the conversion to use abs-paths:
>>
>> [[[
>> static svn_error_t *
>> normalize_merge_sources(apr_array_header_t **merge_sources_p,
> [...]
>> SVN_ERR(svn_dirent_get_absolute(&source_abspath, source, pool));
>> ]]]
>>
>> In that last line shown, 'source' can be (and often is) a URL so this is
>> wrong.
>
> I suggest adding
>
> SVN_ERR_ASSERT(!svn_path_is_url(relative));
>
> inside svn_dirent_get_absolute(), at least for debugging, as we should
> never be calling it on any path that looks like a URL. When I tried
> doing that, almost all tests failed, presumably because some universal
> operation is calling it on a URL.
>
> I'm not planning to tackle this.

The 'source' parameter to normalize_merge_sources is fully expected to be
either a working copy path or a URL. (That there is a second parameter
'source_url' whose may be identical to 'source's could be misleading to
you.) At any rate, the normalize_merge_sources code should be smarter in
the way it handles 'source', to be sure.

-- 
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2425546
Please start new threads on the <dev_at_subversion.apache.org> mailing list.
To subscribe to the new list, send an empty e-mail to <dev-subscribe_at_subversion.apache.org>.

Received on 2009-11-30 17:29:01 CET

This is an archived mail posted to the Subversion Dev mailing list.