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

mingw32 test failure: svn_dirent_is_canonical

From: Martin Hauner <martin.hauner_at_gmx.net>
Date: Sat, 24 Oct 2009 11:57:55 +0200

Hi I'm trying to make subversion run on mingw32.

Running any python test fails because of a drive letter case mismatch. I found
the problem and my question is how and where do I fix it.

./authz_tests.py 1 (it is simply the first python test) breaks with

CMD: svn.exe import -m "Log message for revision 1."
"svn-test-work\local_tmp\greekfiles"
"file:///c%3A/Development/mingw/svn-trunk/subversion/tests/cmdline/svn-test-work/local_tmp/repos"
--config-dir
"c:\Development\mingw\svn-trunk\subversion\tests\cmdline\svn-test-work\local_tmp\config"
--password rayjandom --no-auth-cache --username jrandom
<TIME = 0.266000>
Assertion failed: svn_dirent_is_canonical(base, pool), file
subversion/libsvn_subr/dirent_uri.c,
line 879

The problem is the lower drive 'c' in "file:///c%3A/Development/ming/svn-trunk...".

svn_dirent_is_canonical does not except lower case drive letters.

When it asserts the callstack is:

0 svn_dirent_join dirent_uri.c 879
1 check_repos_path repos.c 1266
2 svn_repos_find_root_path repos.c 1371
3 svn_ra_local__split_URL split_url.c 136
4 svn_ra_local__open ra_plugin.c 455
5 svn_ra_open3 ra_loader.c 487
6 svn_client__open_ra_session_internal ra.c 331
7 get_ra_editor commit.c 616
8 svn_client_import3 commit.c 736
9 svn_cl__import import-cmd.c 119
10 main main.c 2195

In svn_ra_local__split_URL there is Windows specific code that excepts lower
case drive letters. This doesn't fit with svn_dirent_is_canonical not excepting
lower case rive letters.

A fix would be to canonicalized the file:///c%3A url. Where would I add it?
Directly in svn_ra_local__split_URL or some levels up?

-- 
Martin
Subcommander 2.0.0 Beta 5 - http://subcommander.tigris.org
a Win32/Unix/MacOSX subversion GUI client & diff/merge tool.
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2410954
Received on 2009-10-24 11:58:18 CEST

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