aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/LXRng/Repo/Git.pm8
-rwxr-xr-xlxr-genxref2
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)) {