From 0821af5f21fdb083020ae2e3e79e4227ef59cd4f Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 30 Jul 2020 23:43:50 +0000 Subject: www: rework async_* to use method table Although the ->async_next method does not take $self as a receiver, but rather a PublicInbox::HTTP object, we may still retrieve it to be called with the HTTP object via UNIVERSAL->can. --- lib/PublicInbox/MboxGz.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lib/PublicInbox/MboxGz.pm') diff --git a/lib/PublicInbox/MboxGz.pm b/lib/PublicInbox/MboxGz.pm index 967af9c6..913be6e4 100644 --- a/lib/PublicInbox/MboxGz.pm +++ b/lib/PublicInbox/MboxGz.pm @@ -29,8 +29,7 @@ sub mbox_gz { bless $self, __PACKAGE__; my $res_hdr = [ 'Content-Type' => 'application/gzip', 'Content-Disposition' => "inline; filename=$fn.mbox.gz" ]; - $self->psgi_response(200, $res_hdr, \&async_next, - \&PublicInbox::Mbox::async_eml); + $self->psgi_response(200, $res_hdr); } # called by Plack::Util::foreach or similar (generic PSGI) @@ -47,4 +46,6 @@ sub getline { $self->zflush; } +no warnings 'once'; +*async_eml = \&PublicInbox::Mbox::async_eml; 1; -- cgit v1.2.3-24-ge0c7