about summary refs log tree commit homepage
path: root/lib/PublicInbox/SearchIdx.pm
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2020-07-24 05:55:55 +0000
committerEric Wong <e@yhbt.net>2020-07-25 20:48:18 +0000
commit298c806d51f31796caa65da70ab6bfa310db614a (patch)
treee1a99d59c1cb66c7033d5cca317769272ac21d86 /lib/PublicInbox/SearchIdx.pm
parentdfbe27bb5533ef391b214692f25e2823b20064ac (diff)
downloadpublic-inbox-298c806d51f31796caa65da70ab6bfa310db614a.tar.gz
Instead, storing {xdir} will allow us to avoid string
concatenation in the read-only path and save us a little
hash entry space.
Diffstat (limited to 'lib/PublicInbox/SearchIdx.pm')
-rw-r--r--lib/PublicInbox/SearchIdx.pm5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/PublicInbox/SearchIdx.pm b/lib/PublicInbox/SearchIdx.pm
index 4b1b1736..2d53b2d0 100644
--- a/lib/PublicInbox/SearchIdx.pm
+++ b/lib/PublicInbox/SearchIdx.pm
@@ -49,12 +49,13 @@ sub new {
         }
         $ibx = PublicInbox::InboxWritable->new($ibx);
         my $self = bless {
-                inboxdir => $inboxdir,
                 ibx => $ibx,
+                xpfx => $inboxdir, # for xpfx_init
                 -altid => $altid,
                 ibx_ver => $version,
                 indexlevel => $indexlevel,
         }, $class;
+        $self->xpfx_init;
         $self->{-set_indexlevel_once} = 1 if $indexlevel eq 'medium';
         $ibx->umask_prepare;
         if ($version == 1) {
@@ -371,7 +372,7 @@ sub _msgmap_init ($) {
         die "BUG: _msgmap_init is only for v1\n" if $self->{ibx_ver} != 1;
         $self->{mm} //= eval {
                 require PublicInbox::Msgmap;
-                PublicInbox::Msgmap->new($self->{inboxdir}, 1);
+                PublicInbox::Msgmap->new($self->{ibx}->{inboxdir}, 1);
         };
 }