From a6a04af500851bcff8a5ef3341d522a3a0dbefe5 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 19 Jan 2023 20:32:34 +0000 Subject: qspawn: {quiet} only affects normal command exit {quiet} is nice for quieting normal/expected errors (e.g `git diff'), but we still want to show the command in case there's errors in our own code. --- lib/PublicInbox/Qspawn.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/PublicInbox/Qspawn.pm b/lib/PublicInbox/Qspawn.pm index 78afe718..c4708c0f 100644 --- a/lib/PublicInbox/Qspawn.pm +++ b/lib/PublicInbox/Qspawn.pm @@ -57,7 +57,8 @@ sub _do_spawn { $o{$k} = $rlimit; } } - $self->{cmd} = $o{quiet} ? undef : $cmd; + $self->{cmd} = $cmd; + $self->{-quiet} = 1 if $o{quiet}; $o{cb_arg} = [ \&waitpid_err, $self ]; eval { # popen_rd may die on EMFILE, ENFILE @@ -85,7 +86,7 @@ sub finalize ($) { if (my $dst = $self->{qsp_err}) { $$dst .= $$dst ? " $err" : "; $err"; } - warn "@{$self->{cmd}}: $err" if $self->{cmd}; + warn "@{$self->{cmd}}: $err" if !$self->{-quiet}; } my ($env, $qx_cb, $qx_arg, $qx_buf) = @@ -216,9 +217,8 @@ sub rd_hdr ($) { warn "parse_hdr: $@"; $ret = [ 500, [], [ "Internal error\n" ] ]; } elsif (!defined($ret) && !$r) { - my $cmd = $self->{cmd} // [ '(?)' ]; warn <{psgi_env}->{REQUEST_URI}) +EOF parsing headers from @{$self->{cmd}} ($self->{psgi_env}->{REQUEST_URI}) EOM $ret = [ 500, [], [ "Internal error\n" ] ]; } -- cgit v1.2.3-24-ge0c7