From: Eric Wong Date: Fri, 26 Mar 2021 04:29:36 +0000 (+0200) Subject: lei: _lei_store: use default even if unconfigured X-Git-Tag: v1.7.0~901 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=37dfb2c0d3c60277567325c15d5695b2dee03ad1;p=public-inbox.git lei: _lei_store: use default even if unconfigured Perhaps leistore.dir doesn't need to have a config file entry if we're using the default location. v2: "account for unconfigured leistore.dir" (on reuse) --- diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm index d534f1d0..99e180f6 100644 --- a/lib/PublicInbox/LEI.pm +++ b/lib/PublicInbox/LEI.pm @@ -701,8 +701,9 @@ sub _lei_cfg ($;$) { bless $cfg, 'PublicInbox::Config'; $cfg->{-st} = $cur_st; $cfg->{'-f'} = $f; - if ($sto && File::Spec->canonpath($sto_dir) eq - File::Spec->canonpath($cfg->{'leistore.dir'})) { + if ($sto && File::Spec->canonpath($sto_dir // store_path($self)) + eq File::Spec->canonpath($cfg->{'leistore.dir'} // + store_path($self))) { $cfg->{-lei_store} = $sto; } if (scalar(keys %PATH2CFG) > 5) { @@ -719,8 +720,8 @@ sub _lei_store ($;$) { my $cfg = _lei_cfg($self, $creat); $cfg->{-lei_store} //= do { require PublicInbox::LeiStore; - my $dir = $cfg->{'leistore.dir'}; - $dir //= $creat ? store_path($self) : return; + my $dir = $cfg->{'leistore.dir'} // store_path($self); + return unless $creat || -d $dir; PublicInbox::LeiStore->new($dir, { creat => $creat }); }; }