about summary refs log tree commit homepage
path: root/lib/PublicInbox/Feed.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2014-09-15 03:17:29 +0000
committerEric Wong <e@80x24.org>2014-09-15 03:17:29 +0000
commit75980e10b89ccd6df8e583483cba40f93338fc5c (patch)
tree7f89b4912de3f6d696ee57ecf828b969eb6efa4c /lib/PublicInbox/Feed.pm
parent27a0b84774ad63a4462bc17c07c4f9b8e78a54f1 (diff)
downloadpublic-inbox-75980e10b89ccd6df8e583483cba40f93338fc5c.tar.gz
This allows us to more-easily group and pass parameters.
Diffstat (limited to 'lib/PublicInbox/Feed.pm')
-rw-r--r--lib/PublicInbox/Feed.pm15
1 files changed, 7 insertions, 8 deletions
diff --git a/lib/PublicInbox/Feed.pm b/lib/PublicInbox/Feed.pm
index 385e573e..1fa38bf1 100644
--- a/lib/PublicInbox/Feed.pm
+++ b/lib/PublicInbox/Feed.pm
@@ -86,14 +86,14 @@ sub generate_html_index {
                 } @_;
         });
 
-        my %seen;
         # except we sort top-level messages reverse chronologically
+        my $state = [ time, {}, $first ];
         for (sort { (eval { $b->message->header('X-PI-Date') } || 0) <=>
                     (eval { $a->message->header('X-PI-Date') } || 0)
                   } $th->rootset) {
-                dump_msg($_, 0, \$html, time, \%seen, $first);
+                dump_msg($_, 0, \$html, $state);
         }
-
+        $state = undef;
         Email::Address->purge_cache;
 
         my $footer = nav_footer($args->{cgi}, $first, $last, $feed_opts);
@@ -287,14 +287,13 @@ sub add_to_feed {
 }
 
 sub dump_msg {
-        my ($self, $level, $html, $now, $seen, $first) = @_;
+        my ($self, $level, $html, $state) = @_;
         my $mime = $self->message;
         if ($mime) {
-                $$html .= PublicInbox::View->index_entry($mime, $now, $level,
-                                                         $seen, $first);
+                $$html .= PublicInbox::View->index_entry($mime, $level, $state);
         }
-        dump_msg($self->child, $level+1, $html, $now, $seen, $first) if $self->child;
-        dump_msg($self->next, $level, $html, $now, $seen, $first) if $self->next;
+        dump_msg($self->child, $level+1, $html, $state) if $self->child;
+        dump_msg($self->next, $level, $html, $state) if $self->next;
 }
 
 sub do_cat_mail {