You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Vincent Lefevre <vi...@vinc17.net> on 2016/01/22 13:45:01 UTC

Perl module SVN::Client and undefined behavior

With the Perl module SVN::Client from Subversion 1.9.3,
if one does:

------------------------------------------------------------
#!/usr/bin/env perl

use strict;
use SVN::Client;

my $svnc = SVN::Client->new;
$svnc->info('.', undef, undef, sub { }, 0);
------------------------------------------------------------

one gets an assertion failure because the path is not canonical.
While assertion failures are acceptable in C, this is rather annoying
to get one in Perl instead of one of the proper error reporting
methods. I think that this should be regarded as a bug, and it's up
to the Perl module to make sure that the path is canonical before
calling the corresponding svn library function.

BTW, SVN::Core::dirent_canonicalize is not documented in the
SVN::Core(3perl) man page.

-- 
Vincent Lefèvre <vi...@vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)