]> Sergey Matveev's repositories - public-inbox.git/commitdiff
nntp: get_range: return scalarref for $beg
authorEric Wong <e@80x24.org>
Sat, 21 Dec 2019 08:00:00 +0000 (08:00 +0000)
committerEric Wong <e@80x24.org>
Sun, 22 Dec 2019 03:55:38 +0000 (03:55 +0000)
...Instead of just returning a plain scalar inside an arrayref.

This is because we usually pass the result of NNTP::get_range to
Msgmap::msg_range.  Upcoming changes will move us away from
anonymous subroutines, so this change will make followup commits
easier-to-digest as modifications to the underlying scalar can
be more easily propagated between non-anonymous-subs.

lib/PublicInbox/NNTP.pm

index e41e3f64d71e1cab5e8322e3c0bbc1c8ac514b5b..58724938b4e18b2b0b55fdb39a415d54f28c11cd 100644 (file)
@@ -194,7 +194,7 @@ sub cmd_listgroup ($;$$) {
                return $r unless ref $r;
                my ($beg, $end) = @$r;
                long_response($self, sub {
-                       $r = $mm->msg_range(\$beg, $end, 'num');
+                       $r = $mm->msg_range($beg, $end, 'num');
                        scalar(@$r) or return;
                        more($self, join("\r\n", map { $_->[0] } @$r));
                        1;
@@ -583,7 +583,7 @@ sub get_range ($$) {
        $beg = $min if ($beg < $min);
        $end = $max if ($end > $max);
        return '420 No article(s) selected' if ($beg > $end);
-       [ $beg, $end ];
+       [ \$beg, $end ];
 }
 
 sub long_response ($$) {
@@ -651,7 +651,7 @@ sub hdr_message_id ($$$) { # optimize XHDR Message-ID [range] for slrnpull.
                my ($beg, $end) = @$r;
                more($self, $xhdr ? r221 : r225);
                long_response($self, sub {
-                       my $r = $mm->msg_range(\$beg, $end);
+                       my $r = $mm->msg_range($beg, $end);
                        @$r or return;
                        more($self, join("\r\n", map {
                                "$_->[0] <$_->[1]>"
@@ -694,7 +694,7 @@ sub hdr_xref ($$$) { # optimize XHDR Xref [range] for rtin
                my ($beg, $end) = @$r;
                more($self, $xhdr ? r221 : r225);
                long_response($self, sub {
-                       my $r = $mm->msg_range(\$beg, $end);
+                       my $r = $mm->msg_range($beg, $end);
                        @$r or return;
                        more($self, join("\r\n", map {
                                my $num = $_->[0];
@@ -727,7 +727,7 @@ sub hdr_searchmsg ($$$$) {
                return $r unless ref $r;
                my ($beg, $end) = @$r;
                more($self, $xhdr ? r221 : r225);
-               my $cur = $beg;
+               my $cur = $$beg;
                long_response($self, sub {
                        my $msgs = $over->query_xover($cur, $end);
                        my $nr = scalar @$msgs or return;
@@ -813,9 +813,9 @@ sub cmd_xrover ($;$) {
        more($self, '224 Overview information follows');
 
        long_response($self, sub {
-               my $h = over_header_for($over, $beg, 'references');
-               more($self, "$beg $h") if defined($h);
-               $beg++ < $end;
+               my $h = over_header_for($over, $$beg, 'references');
+               more($self, "$$beg $h") if defined($h);
+               $$beg++ < $end;
        });
 }
 
@@ -860,9 +860,9 @@ sub cmd_xover ($;$) {
        my $r = get_range($self, $range);
        return $r unless ref $r;
        my ($beg, $end) = @$r;
-       more($self, "224 Overview information follows for $beg to $end");
+       more($self, "224 Overview information follows for $$beg to $end");
        my $over = $self->{ng}->over;
-       my $cur = $beg;
+       my $cur = $$beg;
        long_response($self, sub {
                my $msgs = $over->query_xover($cur, $end);
                my $nr = scalar @$msgs or return;