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

Re: svnadmin dump/verify/load uses svn_path_join

From: Paul Burba <pburba_at_collab.net>
Date: 2007-03-20 18:13:12 CET

> -----Original Message-----
> From: Lieven Govaerts [mailto:svnlgo@mobsol.be]
> Sent: Tuesday, March 13, 2007 5:46 PM
> To: D.J. Heap
> Cc: Subversion Development
> Subject: Re: svnadmin dump/verify/load uses svn_path_join

<snip>
> So, the scope of the problem we're facing is that the word
> 'path' in the path functions can mean four things:
> 1.native directory/file names, (C:\temp) etc.
> 2. canonicalized native directory/file names (C:/temp) 3.
> urls (file:///c:/temp/repos/c:hi) 4. repos-internal
> directory/file names (/c:hi/A/B/C)
>
> When adding windows path support to the path functions I
> didn't take paths of type four into account, hence the
> situation you reported.
>
> Problem is, not all path functions can handle all those four
> cases at the same time.
> Example: svn_path_join("/", "c:hi") in the above four cases returns:
> 1+2: c:hi because c:hi is an absolute path on Windows

Hi Lieven,

While updating the merge tracking branch I ran into some fallout from
r23907 because we were using svn_path_is_absolute(). No big deal, we
can work around that easily enough, but reading this thread one thing
caught my eye:

How is "c:hi" an absolute path on Windows? Isn't "c:hi" really the
equivalent of "c:.\hi"?

Paul B.

> 3: n/a
> 4: /c:hi
>
> Now svn_path_join is used over 350 times in the Subversion
> code, in all of the 4 cases. The same goes for
> svn_path_dirname, svn_path_basename etc.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Mar 20 18:13:26 2007

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.