diff options
-rw-r--r-- | lib/LXRng/Repo/Git.pm | 8 | ||||
-rwxr-xr-x | lxr-genxref | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/lib/LXRng/Repo/Git.pm b/lib/LXRng/Repo/Git.pm index 7407ca0..946c73f 100644 --- a/lib/LXRng/Repo/Git.pm +++ b/lib/LXRng/Repo/Git.pm @@ -112,10 +112,10 @@ sub node { $path =~ s,/+$,,; if ($path eq '') { - open(my $tag, '<', $$self{'root'}.'/refs/tags/'.$release) - or return undef; - my $ref = <$tag>; - close($tag); + my $git = $self->_git_cmd('rev-list', '--max-count=1', $release); + my $ref = <$git>; + return undef unless $git =~ /\S/; + close($git); chomp($ref); return LXRng::Repo::Git::Directory->new($self, '', $ref); } diff --git a/lxr-genxref b/lxr-genxref index 599f202..d0fe93e 100755 --- a/lxr-genxref +++ b/lxr-genxref @@ -352,7 +352,7 @@ sub inventory_release($) { my $iter = $rep->iterator($version); LXRng::Index::transaction { - my $root = $rep->node('/', $version) or die "bad root"; + my $root = $rep->node('/', $version) or die "Bad root for release $version"; my $node; while (defined($node = $iter->next)) { |