git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFH] - git-svn auth bug (possibly SVN 1.5.0-related)

From
Dmitry Potapov <dpotapov@gmail.com>
Date
Aug 4, 2008, 14:18 UTC
Message-ID
<20080804141820.GT7008@dpotapov.dyndns.org>
In-Reply-To
<20080803220251.GB3006@untitled>
On Sun, Aug 03, 2008 at 03:02:51PM -0700, Eric Wong wrote:
Show 6 quoted lines
> 
> It could be another incompatibility introduced in SVN 1.5.0.
> 
> I'll try to dist-upgrade a machine to Lenny sometime in the next two
> weeks so I can test; I'm pretty busy these days but if anybody else
> wants to figure this out in the meantime, please do :)

The problem happens only if you use FS format 3 regardless what version of SVN perl binding you use. Also, there is no problem with using SVN 1.5 (I tried 1.5.1) as long as you use FS format 2 (I tested git-svn with libsvn-perl 1.4.2 and 1.5.1 works fine) but if your repository is initialized to use FS format 3 (which is the default in SVN 1.5) then this problem happens with all versions of SVN perl binding, and it happens exactly in the same place:

 /home/dpotapov/git/git-svn:3333:    my @ce  = $opts->{ra}->get_commit_editor($opts->{log},
sub get_commit_editor {
 /home/dpotapov/git/git-svn:3909:    my ($self, $log, $cb, $pool) = @_;
 /home/dpotapov/git/git-svn:3910:    my @lock = $SVN::Core::VERSION ge '1.2.0' ? (undef, 0) : ();
 /home/dpotapov/git/git-svn:3911:    $self->SUPER::get_commit_editor($log, $cb, @lock, $pool);
sub AUTOLOAD {
 /usr/lib/perl5/SVN/Ra.pm:74:     my $class = ref($_[0]);
 /usr/lib/perl5/SVN/Ra.pm:75:     my $method = $AUTOLOAD;
 /usr/lib/perl5/SVN/Ra.pm:76:     $method =~ s/.*:://;
 /usr/lib/perl5/SVN/Ra.pm:77:     return unless $method =~ m/[^A-Z]/;
 /usr/lib/perl5/SVN/Ra.pm:79:     my $self = shift;
 /usr/lib/perl5/SVN/Ra.pm:82:     my $func = $self->{session}->can ($method)
 /usr/lib/perl5/SVN/Ra.pm:85:     my @ret = $func->($self->{session}, @_);

Numbers of lines may be different for different versions of libsvn-perl, but the effect is exactly the same. Instead of going to the next line and completing AUTOLOAD, if you use FS format 3 then you end up in croak_on_error(), which uses some uninitialized value in string concatenation (which produces an additional warning) and then calls croak(). End of the story :(

Dmitry
Previous: Eric WongNext: Dmitry Potapov
Message 7 of 11 in “git-svn: teach dcommit about svn auto-props”
  1. 1/2 git-svn: teach dcommit about svn auto-propsBrad King, Jul 21, 2008
  2. Eric WongJul 25, 2008
  3. git-svn: teach dcommit about svn auto-propsBrad King, Jul 25, 2008
  4. Eric WongJul 26, 2008
  5. Brad KingJul 26, 2008
  6. [RFH] - git-svn auth bug (possibly SVN 1.5.0-related)Eric Wong, Aug 3, 2008
  7. Dmitry PotapovAug 4, 2008
  8. Dmitry PotapovAug 4, 2008
  9. correct access right for git-svn-dcommit testDmitry Potapov, Aug 4, 2008
  10. Brad KingAug 4, 2008
  11. Eric WongAug 5, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.