about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2020-07-05 23:27:48 +0000
committerEric Wong <e@yhbt.net>2020-07-06 20:01:15 +0000
commitbf0f7addf5450f669267536ea2232e8dcf1d4249 (patch)
tree402ef891b06b2e798fff2cf171ca035247d2b97b
parent204c19cddc0e184860d36999e341f96e26272d1d (diff)
downloadpublic-inbox-bf0f7addf5450f669267536ea2232e8dcf1d4249.tar.gz
Once again this speeds another endpoint up 10% or so.
-rw-r--r--lib/PublicInbox/Feed.pm20
1 files changed, 10 insertions, 10 deletions
diff --git a/lib/PublicInbox/Feed.pm b/lib/PublicInbox/Feed.pm
index 9141faaf..279106d2 100644
--- a/lib/PublicInbox/Feed.pm
+++ b/lib/PublicInbox/Feed.pm
@@ -48,15 +48,15 @@ sub generate_html_index {
 }
 
 sub new_html_i {
-        my ($ctx) = @_;
-        return $ctx->html_top if exists $ctx->{-html_tip};
-        my $msgs = $ctx->{msgs};
-        while (my $smsg = shift @$msgs) {
-                my $eml = $ctx->{-inbox}->smsg_eml($smsg) or next;
-                return PublicInbox::View::eml_entry($ctx, $smsg, $eml,
-                                                        scalar @$msgs);
-        }
-        PublicInbox::View::pagination_footer($ctx, './new.html');
+        my ($ctx, $eml) = @_;
+        $ctx->zmore($ctx->html_top) if exists $ctx->{-html_tip};
+
+        $eml and return PublicInbox::View::eml_entry($ctx, $ctx->{smsg}, $eml,
+                                                scalar @{$ctx->{msgs}});
+        my $smsg = shift @{$ctx->{msgs}} or
+                $ctx->zmore(PublicInbox::View::pagination_footer(
+                                                $ctx, './new.html'));
+        $smsg;
 }
 
 sub new_html {
@@ -69,7 +69,7 @@ sub new_html {
         $ctx->{-html_tip} = '<pre>';
         $ctx->{-upfx} = '';
         $ctx->{-hr} = 1;
-        PublicInbox::WwwStream::response($ctx, 200, \&new_html_i);
+        PublicInbox::WwwStream::aresponse($ctx, 200, \&new_html_i);
 }
 
 # private subs