about summary refs log tree commit homepage
diff options
context:
space:
mode:
-rw-r--r--lib/PublicInbox/Config.pm18
1 files changed, 14 insertions, 4 deletions
diff --git a/lib/PublicInbox/Config.pm b/lib/PublicInbox/Config.pm
index 8ccf337d..abc525db 100644
--- a/lib/PublicInbox/Config.pm
+++ b/lib/PublicInbox/Config.pm
@@ -364,13 +364,23 @@ sub _fill {
         my ($self, $pfx) = @_;
         my $ibx = {};
 
-        foreach my $k (qw(inboxdir filter newsgroup
-                        watch httpbackendmax
-                        replyto feedmax nntpserver
-                        indexlevel indexsequentialshard)) {
+        for my $k (qw(watch nntpserver)) {
                 my $v = $self->{"$pfx.$k"};
                 $ibx->{$k} = $v if defined $v;
         }
+        for my $k (qw(filter inboxdir newsgroup replyto httpbackendmax feedmax
+                        indexlevel indexsequentialshard)) {
+                if (defined(my $v = $self->{"$pfx.$k"})) {
+                        if (ref($v) eq 'ARRAY') {
+                                warn <<EOF;
+W: $pfx.$k has multiple values, only using `$v->[-1]'
+EOF
+                                $ibx->{$k} = $v->[-1];
+                        } else {
+                                $ibx->{$k} = $v;
+                        }
+                }
+        }
 
         # backwards compatibility:
         $ibx->{inboxdir} //= $self->{"$pfx.mainrepo"};