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

[bug?] perl bindings: SVN::Ra->new trips assertion when file:// URL contains a space

From: Jonathan Nieder <jrnieder_at_gmail.com>
Date: Sat, 17 Dec 2011 00:58:42 -0600

Hi,

I have created a repository at '/tmp/test repository'. The following
simple program:

        use SVN::Ra;
        my $handle = SVN::Ra->new('file:///tmp/test repository');

produces the following result:

        svn: E235000: In file '/home/jrn/src/subversion/subversion/libsvn_subr/dirent_uri.c' line 2290: assertion failed (svn_uri_is_canonical(url, pool))
        Aborted (core dumped)

I would have expected the constructor either (a) to DWIM and succeed
(as it did with Subversion 1.6.x) or (b) to error out by throwing an
exception with "die" that I can catch with "eval".

I am guessing this assertion was introduced in r957893 (Move the
knowledge on how file:/// urls are handled out of libsvn_ra_local,
2010-06-25).

I haven't yet looked into working around the behavior change in the
application (and hence which behavior would be more appropriate) yet,
but in any event being able to get a core dump so easily with the perl
bindings feels like a bug, so I thought you might like to know.
Thoughts welcome. Would behavior (a) or (b) be preferred?

Compare [1], which discusses this behavior from the point of view of
the user rather than how the bindings could be improved.

Thanks,
Jonathan

[1] http://thread.gmane.org/gmane.comp.version-control.subversion.devel/132227/focus=132228
Received on 2011-12-17 07:59:38 CET

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