Don't attempt to return HTTP 300 via Extmsg on it,
since whoever uses /raw is likely piping it to some
other command.
---
 lib/PublicInbox/WWW.pm | 2 +-
 t/plack.t              | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/lib/PublicInbox/WWW.pm b/lib/PublicInbox/WWW.pm
index 456692a3..8f4bfd0f 100644
--- a/lib/PublicInbox/WWW.pm
+++ b/lib/PublicInbox/WWW.pm
@@ -272,7 +272,7 @@ sub get_index {
 sub get_mid_txt {
        my ($ctx) = @_;
        require PublicInbox::Mbox;
-       PublicInbox::Mbox::emit_raw($ctx) || r404($ctx);
+       PublicInbox::Mbox::emit_raw($ctx) || r(404);
 }
 
 # /$INBOX/$MESSAGE_ID/                   -> HTML content (short quotes)
diff --git a/t/plack.t b/t/plack.t
index db72e6cc..40ff2baa 100644
--- a/t/plack.t
+++ b/t/plack.t
@@ -82,6 +82,8 @@ test_psgi($app, sub {
        $res = $cb->(GET('http://example.com/test/[email protected]/raw'));
        is($res->code, 200, 'retrieved CRLF raw');
        like($res->content, qr/\r/, 'CR preserved in raw message');
+       $res = $cb->(GET('http://example.com/test/[email protected]/raw'));
+       is($res->code, 404, 'missing /raw is 404');
 });
 
 # redirect with newsgroup
--
unsubscribe: one-click, see List-Unsubscribe header
archive: https://public-inbox.org/meta/

Reply via email to