From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id A45FF1F881 for ; Sat, 21 Dec 2019 08:00:09 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 8/8] nntp: cmd_xover: use named sub for long_response Date: Sat, 21 Dec 2019 08:00:07 +0000 Message-Id: <20191221080007.27810-9-e@80x24.org> In-Reply-To: <20191221080007.27810-1-e@80x24.org> References: <20191221080007.27810-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: Introduce xover_i, which does the same thing as the anonymous sub it replaces. --- lib/PublicInbox/NNTP.pm | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/lib/PublicInbox/NNTP.pm b/lib/PublicInbox/NNTP.pm index b2927b79..3d3ad539 100644 --- a/lib/PublicInbox/NNTP.pm +++ b/lib/PublicInbox/NNTP.pm @@ -873,6 +873,19 @@ sub cmd_over ($;$) { } } +sub xover_i { + my ($self, $beg, $end) = @_; + my $ng = $self->{ng}; + my $msgs = $ng->over->query_xover($$beg, $end); + my $nr = scalar @$msgs or return; + + # OVERVIEW.FMT + more($self, join("\r\n", map { + over_line($self, $ng, $_->{num}, $_); + } @$msgs)); + $$beg = $msgs->[-1]->{num} + 1; +} + sub cmd_xover ($;$) { my ($self, $range) = @_; $range = $self->{article} unless defined $range; @@ -880,18 +893,7 @@ sub cmd_xover ($;$) { return $r unless ref $r; my ($beg, $end) = @$r; more($self, "224 Overview information follows for $$beg to $end"); - my $over = $self->{ng}->over; - my $cur = $$beg; - long_response($self, sub { - my $msgs = $over->query_xover($cur, $end); - my $nr = scalar @$msgs or return; - - # OVERVIEW.FMT - more($self, join("\r\n", map { - over_line($self, $self->{ng}, $_->{num}, $_); - } @$msgs)); - $cur = $msgs->[-1]->{num} + 1; - }); + long_response($self, \&xover_i, @$r); } sub compressed { undef }