about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2020-12-27 02:53:03 +0000
committerEric Wong <e@80x24.org>2020-12-28 23:19:47 +0000
commit645ec505c03c86ed4500151737bcf3d636d9b18b (patch)
tree0aa59d53ff712d476da3ec825752fc53bef1966e
parent5f875446975b1473c1ffd7196e572e13d58ba56f (diff)
downloadpublic-inbox-645ec505c03c86ed4500151737bcf3d636d9b18b.tar.gz
We can use the ternary operator to avoid an early return, here
-rw-r--r--lib/PublicInbox/Git.pm6
-rw-r--r--t/git.t1
2 files changed, 3 insertions, 4 deletions
diff --git a/lib/PublicInbox/Git.pm b/lib/PublicInbox/Git.pm
index 08406925..73dc7d3e 100644
--- a/lib/PublicInbox/Git.pm
+++ b/lib/PublicInbox/Git.pm
@@ -362,10 +362,8 @@ sub popen {
 sub qx {
         my ($self, @cmd) = @_;
         my $fh = $self->popen(@cmd);
-        local $/ = "\n";
-        return <$fh> if wantarray;
-        local $/;
-        <$fh>
+        local $/ = wantarray ? "\n" : undef;
+        <$fh>;
 }
 
 # check_async and cat_async may trigger the other, so ensure they're
diff --git a/t/git.t b/t/git.t
index dfd7173a..dcd053c5 100644
--- a/t/git.t
+++ b/t/git.t
@@ -79,6 +79,7 @@ if (1) {
         my @ref = $gcf->qx(qw(cat-file blob), $buf);
         my $nl = scalar @ref;
         ok($nl > 1, "qx returned array length of $nl");
+        is(join('', @ref), $ref, 'qx array and scalar context both work');
 
         $gcf->qx(qw(repack -adq));
         ok($gcf->packed_bytes > 0, 'packed size is positive');