Package: git-svn
Version: 1:1.5.5-1
Severity: important
Tags: patch

*** Please type your report below this line ***

If url://repo/trunk is the current Git branch, prop_walk strips trunk
from the path name. That is useful as, for example "git svn show-ignore" 
should not return results like

trunk/foo

but

foo

if svn:ignore for trunk includes foo.

The problem now is that prop_walk strips trunk from the path and then
calls itself recursively. But now trunk is missing in the path and
get_dir fails, because it is called for a non existing path.

The attached patch fixed the problem, by adding the priviously stipped
$self->{path} in the recursive call. I tested it with my current
git-svn repository for the commands show-ignore and show-external.

Cheers
  Christian

-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (600, 'testing'), (500, 'testing-proposed-updates'), (500, 
'stable'), (1, 'experimental'), (1, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.24-1-686 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages git-svn depends on:
ii  git-core                    1:1.5.5-1    fast, scalable, distributed revisi
ii  libsvn-perl [libsvn-core-pe 1.4.6dfsg1-2 Perl bindings for Subversion
ii  libterm-readkey-perl        2.30-3       A perl module for simple terminal 
ii  libwww-perl                 5.808-1      WWW client/server library for Perl

git-svn recommends no packages.

-- no debconf information
--- /usr/bin/git-svn.old        2008-04-08 23:51:59.000000000 +0200
+++ /usr/bin/git-svn    2008-04-22 23:30:34.000000000 +0200
@@ -1901,7 +1901,7 @@
 
        foreach (sort keys %$dirent) {
                next if $dirent->{$_}->{kind} != $SVN::Node::dir;
-               $self->prop_walk($p . $_, $rev, $sub);
+               $self->prop_walk($self->{path} . $p . $_, $rev, $sub);
        }
 }
 

Reply via email to