about summary refs log tree commit homepage
path: root/lib/PublicInbox/Git.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2023-03-26 23:48:03 +0000
committerEric Wong <e@80x24.org>2023-03-27 01:16:43 +0000
commit6061f4e7b3c68bb4f41960c4df2c1eddcbdc86d9 (patch)
tree2adf5a28c5acb95aa52355b707e9508aeb90abe1 /lib/PublicInbox/Git.pm
parent78cf2586c2e9d7f8e7a77c24ccca3d054ab9d0a6 (diff)
downloadpublic-inbox-6061f4e7b3c68bb4f41960c4df2c1eddcbdc86d9.tar.gz
While unlikely, `git --version' may fail, so we must check for
errors and by reaping the process ASAP via tied close().
Diffstat (limited to 'lib/PublicInbox/Git.pm')
-rw-r--r--lib/PublicInbox/Git.pm1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/PublicInbox/Git.pm b/lib/PublicInbox/Git.pm
index 2729b38f..6f8232cf 100644
--- a/lib/PublicInbox/Git.pm
+++ b/lib/PublicInbox/Git.pm
@@ -64,6 +64,7 @@ sub check_git_exe () {
         if ($st ne $EXE_ST) {
                 my $rd = popen_rd([ $GIT_EXE, '--version' ]);
                 my $v = readline($rd);
+                close($rd) or die "$GIT_EXE --version: $?";
                 $v =~ /\b([0-9]+(?:\.[0-9]+){2})/ or die
                         "$GIT_EXE --version output: $v # unparseable";
                 my @v = split(/\./, $1, 3);