lib/PublicInbox/Git.pm | 7 +++---- diff --git a/lib/PublicInbox/Git.pm b/lib/PublicInbox/Git.pm index cdd2b400763acd93ee4fd7ba07ad7ae0aa787e0a..3d97300c43c3f0fca345d6719d925d3b9ad652eb 100644 --- a/lib/PublicInbox/Git.pm +++ b/lib/PublicInbox/Git.pm @@ -507,14 +507,13 @@ # only match "Unnamed repository", not the full contents of # templates/this--description in git.git sub manifest_entry { my ($self, $epoch, $default_desc) = @_; - my ($fh, $pid) = $self->popen('show-ref'); + my $fh = $self->popen('show-ref'); my $dig = Digest::SHA->new(1); while (read($fh, my $buf, 65536)) { $dig->add($buf); } - close $fh; - waitpid($pid, 0); - return if $?; # empty, uninitialized git repo + close $fh or return; # empty, uninitialized git repo + undef $fh; # for open, below my $git_dir = $self->{git_dir}; my $ent = { fingerprint => $dig->hexdigest,