X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FWwwAtomStream.pm;h=7b7047ac26d39e9647d3866d3a65801ca2dbaf54;hb=81ea7f0100f016ad8c66605b49230e876a1eb82d;hp=361e61f64e7f7be755e4d83895bbb8c19d3afb07;hpb=9dfc0b670fc634b54998c3020f173b82de1915ac;p=public-inbox.git diff --git a/lib/PublicInbox/WwwAtomStream.pm b/lib/PublicInbox/WwwAtomStream.pm index 361e61f6..7b7047ac 100644 --- a/lib/PublicInbox/WwwAtomStream.pm +++ b/lib/PublicInbox/WwwAtomStream.pm @@ -28,7 +28,7 @@ sub async_next ($) { if (my $smsg = $ctx->{smsg} = $ctx->{cb}->($ctx)) { $ctx->smsg_blob($smsg); } else { - $ctx->{http_out}->write($ctx->translate('')); + $ctx->write(''); $ctx->close; } }; @@ -38,7 +38,8 @@ sub async_next ($) { sub async_eml { # for async_blob_cb my ($ctx, $eml) = @_; my $smsg = delete $ctx->{smsg}; - $ctx->{http_out}->write($ctx->translate(feed_entry($ctx, $smsg, $eml))) + $smsg->{mid} // $smsg->populate($eml); + $ctx->write(feed_entry($ctx, $smsg, $eml)); } sub response { @@ -100,7 +101,11 @@ sub atom_header { } else { $title = title_tag($ibx->description); $self_url .= 'new.atom'; - $page_id = "mailto:$ibx->{-primary_address}"; + if (defined(my $addr = $ibx->{-primary_address})) { + $page_id = "mailto:$addr"; + } else { + $page_id = to_uuid($self_url); + } } qq(\n) . qq(' . strftime('%Y-%m-%dT%H:%M:%SZ', gmtime(@_)) . ''; + my ($t) = @_; + '' . strftime('%Y-%m-%dT%H:%M:%SZ', gmtime($t)) . ''; } 1;