lib/PublicInbox/Inbox.pm | 3 ++- lib/PublicInbox/WwwListing.pm | 4 ++-- diff --git a/lib/PublicInbox/Inbox.pm b/lib/PublicInbox/Inbox.pm index df140cacbec177191839a7ffd310b132e11c566e..b0bb9dcc288daa328cfd44da340d4ae74a274a2b 100644 --- a/lib/PublicInbox/Inbox.pm +++ b/lib/PublicInbox/Inbox.pm @@ -250,7 +250,8 @@ return $url .= $self->{name} . '/'; } # called from a non-PSGI environment (e.g. NNTP/POP3): $self->{-base_url} ||= do { - my $url = $self->{url}->[0] or return undef; + my $url = $self->{url} // return undef; + $url = $url->[0] // return undef; # expand protocol-relative URLs to HTTPS if we're # not inside a web server $url = "https:$url" if $url =~ m!\A//!; diff --git a/lib/PublicInbox/WwwListing.pm b/lib/PublicInbox/WwwListing.pm index 1bb5fbd041587cbc3931d370fcecde9519d5ff6e..ef9048b5be925f77ab20377a049171aa4f4f47ad 100644 --- a/lib/PublicInbox/WwwListing.pm +++ b/lib/PublicInbox/WwwListing.pm @@ -17,7 +17,7 @@ my ($ctx, $ibx, $ce) = @_; my $desc = ascii_html($ce->{description} //= $ibx->description); my $ts = fmt_ts($ce->{-modified} //= $ibx->modified); my ($url, $href); - if (defined($ibx->{url})) { + if (scalar(@{$ibx->{url} // []})) { $url = $href = ascii_html(prurl($ctx->{env}, $ibx->{url})); } else { $href = ascii_html(uri_escape_utf8($ibx->{name})) . '/'; @@ -41,7 +41,7 @@ if (defined($section)) { return if $section !~ m!\Apublicinbox\.([^/]+)\z!; my $ibx = $cfg->lookup_name($1) or return; if (!$ibx->{-hide}->{$ctx->hide_key} && - grep(/$re/, @{$ibx->{url}})) { + grep(/$re/, @{$ibx->{url} // []})) { $ctx->ibx_entry($ibx); } } else { # undef == "EOF"