Bug#356894: [Swig-devel] Swig 1.3.28 and current CVS breaks
subversion bindings
Marcelo Matus
mmatus at acms.arizona.edu
Wed Mar 22 18:58:19 UTC 2006
How are you getting this file
SVN/Mirror/Ra.pm
it seems subversion generates one, but it is only 214 lines long.
also, this call:
$reporter->set_path ('', $start, @lock, 0);
is no where to be found in the *.pm files generated by subversion-1.3.0.
Are you sure you don't have a PATH variable set such as is using
and old version of Ra.pm?
Anyway, it fails calling 'set_path'
obj->set_path(report_baton, path, revision, start_empty, lock_token, pool);
where the '6' one refers to 'lock_token', is @lock realy a string parameter,
could you print it out before the call?.
SWIG/perl now detects better errors such as calling with the wrong
number of arguments or wrong argument type.
Marcelo
Loïc Minier wrote:
> Hi there,
>
> This is a followup for Debian bug <http://bugs.debian.org/356894>.
>
>On Mon, Mar 20, 2006, Marcelo Matus wrote:
>
>
>>subversion 1.3.0 has been tested against 1.3.28 and 1.3.29, and it seems
>>to be working,
>>well, at least the internal subversion test-suites for perl, python and
>>ruby.
>>
>>still, if you thing there is an issue, the best thing will be try to
>>isolate the problem
>>in one small example that we could test over here.
>>
>>
>
> The exact error is thrown by the following line:
> $reporter->set_path ('', $start, @lock, 0);
> in SVN/Mirror/Ra.pm at line 524.
>
> However, while setting up a test case for you, I copy-pasted the
> SVN::Mirror example from the manual page:
> #!/usr/bin/perl -w
>
> use SVN::Mirror;
>
> my $url = 'svn://svn.debian.org/svn/pkg-madwifi';
> my $repos = '/tmp/foobar/repo';
>
> my $m = SVN::Mirror->new (source => $url,
> repos => $repos,
> target_path => '/mirror/pkg-madwifi',
> repos_create => 1,
> skip_to => 80
> );
>
> % mkdir -p /tmp/foobar/repo; cd /tmp/foobar; perl ~/foo.pl
> % perl ~/foo.pl
> Use of uninitialized value in -e at /usr/share/perl5/SVN/Mirror.pm line 86.
> zsh: segmentation fault perl ~/foo.pl
>
> Looks to me as there's a couple of bugs here already:
> - documentation out of date
> - does not check whether repospath is defined prior to checking whether
> the file exists
> - perl segfaults
>
> Just adding a "target" to that call is enough to trigger the actual
> bug:
> #!/usr/bin/perl -w
>
> use SVN::Mirror;
>
> my $url = 'svn://svn.debian.org/svn/pkg-madwifi';
> my $repos = '/tmp/foobar/repo';
>
> my $m = SVN::Mirror->new (source => $url,
> repos => $repos,
> target => '/tmp/foobar/target',
> target_path => '/mirror/pkg-madwifi',
> repos_create => 1,
> skip_to => 80
> );
> $m->init;
> $m->run;
> % perl ~/foo.pl
> Committed revision 1.
> Syncing svn://svn.debian.org/svn/pkg-madwifi
> Retrieving log information from 80 to 89
> In SVN/Mirror/Ra.pm (reached)
> TypeError in method 'svn_ra_reporter2_invoke_set_path', argument 6 of
> type 'char const *'
>
> HTH,
>
>
More information about the pkg-subversion-maintainers
mailing list