diff options
-rw-r--r-- | lib/PublicInbox/Inbox.pm | 21 | ||||
-rw-r--r-- | lib/PublicInbox/WWW.pm | 9 | ||||
-rw-r--r-- | t/nntp.t | 1 |
3 files changed, 10 insertions, 21 deletions
diff --git a/lib/PublicInbox/Inbox.pm b/lib/PublicInbox/Inbox.pm index 04b7d764..c525f4d1 100644 --- a/lib/PublicInbox/Inbox.pm +++ b/lib/PublicInbox/Inbox.pm @@ -33,7 +33,8 @@ sub do_cleanup { for my $git (@{$ibx->{-repo_objs}}) { $live = 1 if $git->cleanup(1); } - delete @$ibx{qw(over mm)}; + delete @$ibx{qw(over mm description cloneurl + -altid_map -imap_url -nntp_url)}; PublicInbox::DS::add_uniq_timer($ibx+0, 5, \&do_cleanup, $ibx) if $live; } @@ -219,15 +220,13 @@ sub base_url { return $url .= $self->{name} . '/'; } # called from a non-PSGI environment (e.g. NNTP/POP3): - $self->{-base_url} ||= do { - 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//!; - $url .= '/' if $url !~ m!/\z!; - $url; - }; + 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 + substr($url, 0, 0, 'https:') if substr($url, 0, 2) eq '//'; + $url .= '/' if substr($url, -1, 1) ne '/'; + $url; } sub _x_url ($$$) { @@ -350,7 +349,7 @@ sub modified { # (pathname is NOT public, but prefix is used for Xapian queries) sub altid_map ($) { my ($self) = @_; - $self->{-altid_map} //= eval { + eval { require PublicInbox::AltId; my $altid = $self->{altid} or return {}; my %h = map {; diff --git a/lib/PublicInbox/WWW.pm b/lib/PublicInbox/WWW.pm index a7c961f4..5e83f769 100644 --- a/lib/PublicInbox/WWW.pm +++ b/lib/PublicInbox/WWW.pm @@ -173,18 +173,9 @@ sub preload { $self->cgit; $self->stylesheets_prepare($_) for ('', '../', '../../'); $self->news_www; - $pi_cfg->each_inbox(\&preload_inbox); } } -sub preload_inbox { - my $ibx = shift; - $ibx->altid_map; - $ibx->cloneurl; - $ibx->description; - $ibx->base_url; -} - # private functions below sub r404 { @@ -126,7 +126,6 @@ use PublicInbox::Config; is_deeply([ $mime->header('Xref') ], [ 'example.com test:1' ], 'Xref: set'); - $ibx->{-base_url} = 'http://mirror.example.com/m/'; $smsg->{num} = 2; PublicInbox::NNTP::set_nntp_headers($hdr, $smsg); is_deeply([ $mime->header('Message-ID') ], [ "<$mid>" ], |