about summary refs log tree commit
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2020-08-01 20:16:58 +0000
committerEric Wong <e@yhbt.net>2020-08-02 08:25:16 +0000
commit3e5b497d0f7d415140da2caabf267d62711b83b4 (patch)
tree2015f19b412865d79e2cd7b07dbd2fe246e6594e
parent0faddbbfecaa784c584d3a625628c288fe9316c7 (diff)
downloadpublic-inbox-3e5b497d0f7d415140da2caabf267d62711b83b4.tar.gz
The return value of art_lookup changed but this command wasn't
updated since it wasn't tested.

Fixes: 0e6ceff37fc38f28 ("nntp: support slow blob retrievals")
-rw-r--r--lib/PublicInbox/NNTP.pm8
-rw-r--r--t/nntpd.t1
2 files changed, 5 insertions, 4 deletions
diff --git a/lib/PublicInbox/NNTP.pm b/lib/PublicInbox/NNTP.pm
index 87ddf7a4..595a4046 100644
--- a/lib/PublicInbox/NNTP.pm
+++ b/lib/PublicInbox/NNTP.pm
@@ -581,11 +581,11 @@ sub cmd_body ($;$) {
 
 sub cmd_stat ($;$) {
         my ($self, $art) = @_;
-        my $r = art_lookup($self, $art);
-        return $r unless ref $r;
-        my ($n, $mid) = @$r;
+        my $smsg = art_lookup($self, $art); # art may be msgid
+        return $smsg unless ref $smsg;
+        $art = $smsg->{num};
         set_art($self, $art);
-        "223 $n <$mid> article retrieved - request text separately";
+        "223 $art <$smsg->{mid}> article retrieved - request text separately";
 }
 
 sub cmd_ihave ($) { '435 article not wanted - do not send it' }
diff --git a/t/nntpd.t b/t/nntpd.t
index aaf6661d..0b4a2636 100644
--- a/t/nntpd.t
+++ b/t/nntpd.t
@@ -206,6 +206,7 @@ EOF
 
         is_deeply($n->head(1), $n->head('<nntp@example.com>'), 'HEAD OK');
         is_deeply($n->body(1), $n->body('<nntp@example.com>'), 'BODY OK');
+        is_deeply($n->nntpstat(1), '<nntp@example.com>', 'STAT');
         is($n->body(1)->[0], "This is a test message for El\xc3\xa9anor\n",
                 'body really matches');
         my $art = $n->article(1);