From 6bcab55b2594368e5f8aad0badb8d51d5d8ba20f Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 5 Jul 2020 23:27:55 +0000 Subject: wwwtext: simplify gzf_maybe use gzf_maybe always returns a GzipFilter object, even if it uses CompressNoop. We can also use ->zflush instead of ->translate(undef) here for the final bit. --- lib/PublicInbox/WwwText.pm | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'lib/PublicInbox/WwwText.pm') diff --git a/lib/PublicInbox/WwwText.pm b/lib/PublicInbox/WwwText.pm index 08691684..a691e2d8 100644 --- a/lib/PublicInbox/WwwText.pm +++ b/lib/PublicInbox/WwwText.pm @@ -38,16 +38,13 @@ sub get_text { } my $env = $ctx->{env}; if ($raw) { - my $body; - if (my $gzf = $code == 200 ? gzf_maybe($hdr, $env) : undef) { - my $zbuf = $gzf->translate($txt); - undef $txt; - $body = [ $zbuf .= $gzf->translate(undef) ]; - } else { - $body = [ $txt ]; + if ($code == 200) { + my $gzf = gzf_maybe($hdr, $env); + $txt = $gzf->translate($txt); + $txt .= $gzf->zflush; } - $hdr->[3] = bytes::length($body->[0]); - return [ $code, $hdr, $body ] + $hdr->[3] = bytes::length($txt); + return [ $code, $hdr, [ $txt ] ] } # enforce trailing slash for "wget -r" compatibility -- cgit v1.2.3-24-ge0c7