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

RE: dirent_uri-test failure on Windows ...?

From: Bert Huijben <rhuijben_at_sharpsvn.net>
Date: Sun, 25 Oct 2009 23:36:13 +0100

> -----Original Message-----
> From: Martin Hauner [mailto:martin.hauner_at_gmx.net]
> Sent: zondag 25 oktober 2009 11:34
> To: dev_at_subversion.tigris.org
> Subject: dirent_uri-test failure on Windows ...?
>
> Hi,
>
> I get a test failure with my mingw build in dirent_uri-test:
> test_dirent_get_absolute.
>
> After stepping into the code to find the problem, which is a drive
> letter case
> mismatch again, I thought this should fail with a visual studio build
> too (vs
> 2008 express). And indeed it does.
>
> The reason seems to be that "everyone" thinks the drive letters should
> be upper
> case (there are various comments in svn and apr that the letter must be
> upper
> case) but GetFullPathNameW returns a path with a lower case drive
> letter.

Ok.. I found a way to reproduce getting a lower case path. (I never saw this
issue before)

Open a cmd.exe

Type
> cd c:\Windows

And your c: cwd will be "c:\Windows" (lower case 'c')

Type
> cd C:\Windows\System32

And your c: cwd will be "C:\Windows\System32" (upper case 'C')

If you just use "d:' to switch drives, you will never get a lower case drive
letter.

The reason you see this is most likely that you use a different shell, or it
would have been reported years ago.

I assume this will have to be fixed in apr and not in Subversion, as apr
returns an error here. It would help us if apr would normalize its output to
upper case here, instead of returning the right 'as is' value.

        Bert

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2411238
Received on 2009-10-25 23:36:26 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.