about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2021-02-22 08:22:52 -0300
committerEric Wong <e@80x24.org>2021-02-22 18:14:18 -0400
commit16396c1c2f4968d465ef99a68b3d76d7c1f32628 (patch)
treea1affbb2bd1743947f4f353f52d41534661b6e14
parent2fc7ac8bf713d10a77ed65ca9fa8836675d3a57f (diff)
downloadpublic-inbox-16396c1c2f4968d465ef99a68b3d76d7c1f32628.tar.gz
Existing callers in LeiExternal actually depend on this,
and LeiAuth shouldn't need to be creating a config file
just to do a conversion against an anonymous IMAP server.
-rw-r--r--lib/PublicInbox/LEI.pm2
-rw-r--r--lib/PublicInbox/LeiAuth.pm1
-rw-r--r--lib/PublicInbox/LeiExternal.pm6
3 files changed, 4 insertions, 5 deletions
diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm
index 73c9e267..dd34c668 100644
--- a/lib/PublicInbox/LEI.pm
+++ b/lib/PublicInbox/LEI.pm
@@ -592,7 +592,7 @@ sub _lei_cfg ($;$) {
         if (!@st) {
                 unless ($creat) {
                         delete $self->{cfg};
-                        return;
+                        return bless {}, 'PublicInbox::Config';
                 }
                 my (undef, $cfg_dir, undef) = File::Spec->splitpath($f);
                 -d $cfg_dir or mkpath($cfg_dir) or die "mkpath($cfg_dir): $!\n";
diff --git a/lib/PublicInbox/LeiAuth.pm b/lib/PublicInbox/LeiAuth.pm
index f2cdb026..5d321be2 100644
--- a/lib/PublicInbox/LeiAuth.pm
+++ b/lib/PublicInbox/LeiAuth.pm
@@ -42,7 +42,6 @@ sub auth_eof {
 
 sub auth_start {
         my ($self, $lei, $post_auth_cb, @args) = @_;
-        $lei->_lei_cfg(1); # workers may need to read config
         my $op = $lei->workers_start($self, 'auth', 1, {
                 'net_merge' => [ \&net_merge, $lei ],
                 '' => [ \&auth_eof, $lei, $post_auth_cb, @args ],
diff --git a/lib/PublicInbox/LeiExternal.pm b/lib/PublicInbox/LeiExternal.pm
index 6cc2e671..0cc84cca 100644
--- a/lib/PublicInbox/LeiExternal.pm
+++ b/lib/PublicInbox/LeiExternal.pm
@@ -9,7 +9,7 @@ use PublicInbox::Config;
 
 sub externals_each {
         my ($self, $cb, @arg) = @_;
-        my $cfg = $self->_lei_cfg(0);
+        my $cfg = $self->_lei_cfg;
         my %boost;
         for my $sec (grep(/\Aexternal\./, @{$cfg->{-section_order}})) {
                 my $loc = substr($sec, length('external.'));
@@ -234,7 +234,7 @@ sub _complete_url_common ($) {
 # shell completion helper called by lei__complete
 sub _complete_forget_external {
         my ($self, @argv) = @_;
-        my $cfg = $self->_lei_cfg(0);
+        my $cfg = $self->_lei_cfg;
         my ($cur, $re) = _complete_url_common(\@argv);
         # FIXME: bash completion off "http:" or "https:" when the last
         # character is a colon doesn't work properly even if we're
@@ -250,7 +250,7 @@ sub _complete_forget_external {
 
 sub _complete_add_external { # for bash, this relies on "compopt -o nospace"
         my ($self, @argv) = @_;
-        my $cfg = $self->_lei_cfg(0);
+        my $cfg = $self->_lei_cfg;
         my ($cur, $re) = _complete_url_common(\@argv);
         require URI;
         map {