about summary refs log tree commit homepage
path: root/lib/PublicInbox
diff options
context:
space:
mode:
Diffstat (limited to 'lib/PublicInbox')
-rw-r--r--lib/PublicInbox/ExtMsg.pm4
-rw-r--r--lib/PublicInbox/WwwStream.pm7
2 files changed, 6 insertions, 5 deletions
diff --git a/lib/PublicInbox/ExtMsg.pm b/lib/PublicInbox/ExtMsg.pm
index 4d753a7e..a14eddf6 100644
--- a/lib/PublicInbox/ExtMsg.pm
+++ b/lib/PublicInbox/ExtMsg.pm
@@ -159,7 +159,7 @@ sub ext_msg {
         $ctx->{-html_tip} = $s .= '</pre>';
         $ctx->{-title_html} = $title;
         $ctx->{-upfx} = '../';
-        PublicInbox::WwwStream->response($ctx, $code);
+        PublicInbox::WwwStream::oneshot($ctx, $code);
 }
 
 sub ext_urls {
@@ -197,7 +197,7 @@ sub exact {
                                         qq(<a\nhref="$u$href/">$u$html/</a>\n)
                                 } @$found),
                         $ext_urls, '</pre>');
-        PublicInbox::WwwStream->response($ctx, $code);
+        PublicInbox::WwwStream::oneshot($ctx, $code);
 }
 
 1;
diff --git a/lib/PublicInbox/WwwStream.pm b/lib/PublicInbox/WwwStream.pm
index 2dd8b157..fceef745 100644
--- a/lib/PublicInbox/WwwStream.pm
+++ b/lib/PublicInbox/WwwStream.pm
@@ -28,7 +28,7 @@ sub new {
 
         bless {
                 nr => 0,
-                cb => $cb || \&close,
+                cb => $cb,
                 ctx => $ctx,
                 base_url => base_url($ctx),
         }, $class;
@@ -175,8 +175,9 @@ sub oneshot {
                 ctx => $ctx,
                 base_url => base_url($ctx),
         }, __PACKAGE__;
-        [ $code, [ 'Content-Type', 'text/html; charset=UTF-8' ],
-                [ _html_top($self), $$strref, _html_end($self) ] ]
+        [ $code, [ 'Content-Type', 'text/html; charset=UTF-8' ], [
+                _html_top($self), $strref ? $$strref : (), _html_end($self)
+        ] ]
 }
 
 1;