diff options
-rw-r--r-- | lib/PublicInbox/Feed.pm | 2 | ||||
-rw-r--r-- | lib/PublicInbox/Inbox.pm | 17 | ||||
-rw-r--r-- | t/config.t | 2 |
3 files changed, 7 insertions, 14 deletions
diff --git a/lib/PublicInbox/Feed.pm b/lib/PublicInbox/Feed.pm index 4dd584d3..f570a25d 100644 --- a/lib/PublicInbox/Feed.pm +++ b/lib/PublicInbox/Feed.pm @@ -80,7 +80,7 @@ sub _no_thread () { sub recent_msgs { my ($ctx) = @_; my $ibx = $ctx->{ibx}; - my $max = $ibx->{feedmax}; + my $max = $ibx->{feedmax} // 25; return PublicInbox::View::paginate_recent($ctx, $max) if $ibx->over; # only for rare v1 inboxes which aren't indexed at all diff --git a/lib/PublicInbox/Inbox.pm b/lib/PublicInbox/Inbox.pm index 586bd561..4e3c23f3 100644 --- a/lib/PublicInbox/Inbox.pm +++ b/lib/PublicInbox/Inbox.pm @@ -74,16 +74,6 @@ sub _cleanup_later ($) { $CLEANUP->{"$self"} = $self; } -sub _set_uint ($$$) { - my ($opts, $field, $default) = @_; - my $val = $opts->{$field}; - if (defined $val) { - $val = $val->[-1] if ref($val) eq 'ARRAY'; - $val = undef if $val !~ /\A[0-9]+\z/; - } - $opts->{$field} = $val || $default; -} - sub _set_limiter ($$$) { my ($self, $pi_cfg, $pfx) = @_; my $lkey = "-${pfx}_limiter"; @@ -112,7 +102,12 @@ sub new { $opts->{domain} = ($p =~ /\@(\S+)\z/) ? $1 : 'localhost'; my $pi_cfg = delete $opts->{-pi_cfg}; _set_limiter($opts, $pi_cfg, 'httpbackend'); - _set_uint($opts, 'feedmax', 25); + my $fmax = $opts->{feedmax}; + if (defined($fmax) && $fmax =~ /\A[0-9]+\z/) { + $opts->{feedmax} += 0; + } else { + delete $opts->{feedmax}; + } $opts->{nntpserver} ||= $pi_cfg->{'publicinbox.nntpserver'}; my $dir = $opts->{inboxdir}; if (defined $dir && -f "$dir/inbox.lock") { @@ -41,7 +41,6 @@ my ($tmpdir, $for_destroy) = tmpdir(); 'url' => [ 'http://example.com/meta' ], -primary_address => 'meta@public-inbox.org', 'name' => 'meta', - feedmax => 25, -httpbackend_limiter => undef, nntpserver => undef, }, "lookup matches expected output"); @@ -58,7 +57,6 @@ my ($tmpdir, $for_destroy) = tmpdir(); 'inboxdir' => '/home/pi/test-main.git', 'domain' => 'public-inbox.org', 'name' => 'test', - feedmax => 25, 'url' => [ 'http://example.com/test' ], -httpbackend_limiter => undef, nntpserver => undef, |