]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/SearchView.pm
www_stream: add response wrapper sub
[public-inbox.git] / lib / PublicInbox / SearchView.pm
index 488822e6c594ea243aac51d1ee9d097c1c75a8d9..30a310c9f58ceede52857d3b07d23668eaedcf6b 100644 (file)
@@ -55,9 +55,7 @@ sub sres_top_html {
                        $cb = mset_summary($ctx, $mset, $q);
                }
        }
-
-       [ $code, ['Content-Type', 'text/html; charset=UTF-8'],
-               PublicInbox::WwwStream->new($ctx, $cb) ];
+       PublicInbox::WwwStream->response($ctx, $code, $cb);
 }
 
 # display non-threaded search results similar to what users expect from
@@ -169,22 +167,17 @@ sub mset_thread {
        }
        my $skel = search_nav_bot($mset, $q). "<pre>";
        my $inbox = $ctx->{-inbox};
-       my $state = {
-               -inbox => $inbox,
-               anchor_idx => 1,
-               ctx => $ctx,
-               cur_level => 0,
-               dst => \$skel,
-               mapping => {},
-               pct => \%pct,
-               prev_attr => '',
-               prev_level => 0,
-               seen => {},
-               srch => $ctx->{srch},
-               upfx => './',
-       };
+       $ctx->{-upfx} = '';
+       $ctx->{anchor_idx} = 1;
+       $ctx->{cur_level} = 0;
+       $ctx->{dst} = \$skel;
+       $ctx->{mapping} = {};
+       $ctx->{pct} = \%pct;
+       $ctx->{prev_attr} = '';
+       $ctx->{prev_level} = 0;
+       $ctx->{seen} = {};
 
-       PublicInbox::View::walk_thread($th, $state,
+       PublicInbox::View::walk_thread($th, $ctx,
                *PublicInbox::View::pre_thread);
 
        my $msgs = \@m;
@@ -197,7 +190,7 @@ sub mset_thread {
                }
                if ($mime) {
                        $mime = Email::MIME->new($mime);
-                       return PublicInbox::View::index_entry($mime, $state);
+                       return PublicInbox::View::index_entry($mime, $ctx);
                }
                $msgs = undef;
                $skel .= "\n</pre>";