use PublicInbox::MID qw/mid_escape/;
use PublicInbox::Hval qw/to_filename/;
use PublicInbox::Smsg;
+use PublicInbox::WwwStream qw(html_oneshot);
use Email::Simple;
use Email::MIME::Encode;
my ($ctx, $id, $prev, $next, $mref, $hdr) = @$more;
if ($hdr) { # first message hits this, only
pop @$more; # $hdr
- return msg_hdr($ctx, $hdr);
- }
- if ($mref) { # all messages hit this
pop @$more; # $mref
- return msg_body($$mref);
+ return msg_hdr($ctx, $hdr) . msg_body($$mref);
}
my $cur = $next or return;
my $ibx = $ctx->{-inbox};
$next = $ibx->over->next_by_mid($ctx->{mid}, \$id, \$prev);
$mref = $ibx->msg_by_smsg($cur) or return;
$hdr = Email::Simple->new($mref)->header_obj;
- @$more = ($ctx, $id, $prev, $next, $mref); # $next may be undef, here
- msg_hdr($ctx, $hdr); # all but first message hits this
+ @$more = ($ctx, $id, $prev, $next); # $next may be undef, here
+ msg_hdr($ctx, $hdr) . msg_body($$mref);
}
sub close {} # noop
'List-Post', "<mailto:$ibx->{-primary_address}>",
);
my $crlf = $header_obj->crlf;
- my $buf = "From mboxrd\@z Thu Jan 1 00:00:00 1970\n" .
- $header_obj->as_string;
+ my $buf = $header_obj->as_string;
+ # fixup old bug from import (pre-a0c07cba0e5d8b6a)
+ $buf =~ s/\A[\r\n]*From [^\r\n]*\r?\n//s;
+ $buf = "From mboxrd\@z Thu Jan 1 00:00:00 1970" . $crlf . $buf;
+
for (my $i = 0; $i < @append; $i += 2) {
my $k = $append[$i];
my $v = $append[$i + 1];
}
sub need_gzip {
- PublicInbox::WwwStream::oneshot($_[0], 501, \<<EOF);
+ html_oneshot($_[0], 501, \<<EOF);
<pre>gzipped mbox not available
The administrator needs to install the Compress::Raw::Zlib Perl module