From: Eric Wong Date: Mon, 2 Jan 2023 08:20:13 +0000 (+0000) Subject: qspawn: fix process finalization for generic PSGI server X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=9ee49419e5138798613d51611c79df5b43e29fa2;p=public-inbox.git qspawn: fix process finalization for generic PSGI server This fixes the inability to fallback to WwwCoderepo on cgit 404s with generic PSGI servers. Unfortunately, this doesn't seem to get tested with generic PSGI tests, and doesn't happen on public-inbox-httpd, obviously. --- diff --git a/lib/PublicInbox/Qspawn.pm b/lib/PublicInbox/Qspawn.pm index 9ca6b3db..297a284f 100644 --- a/lib/PublicInbox/Qspawn.pm +++ b/lib/PublicInbox/Qspawn.pm @@ -233,9 +233,10 @@ sub psgi_return_init_cb { if (ref($r) ne 'ARRAY' || scalar(@$r) == 3) { # error if ($async) { # calls rpipe->close && ->event_step $async->close; # PublicInbox::HTTPD::Async::close - } else { - $self->{rpipe}->close; + } else { # generic PSGI: + delete($self->{rpipe})->close; event_step($self); + waitpid_err($self); } if (ref($r) eq 'ARRAY') { # error $wcb->($r)