From ec483e30d9003530224cfb92d1657ad33d1db7da Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 9 Aug 2016 00:22:51 +0000 Subject: searchidx: persist the PublicInbox::Git object We can cheaply keep the object around nowadays since it spawns expensive processes only on an as-needed basis. --- lib/PublicInbox/SearchIdx.pm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lib/PublicInbox/SearchIdx.pm') diff --git a/lib/PublicInbox/SearchIdx.pm b/lib/PublicInbox/SearchIdx.pm index 9a462c75..2c4e704d 100644 --- a/lib/PublicInbox/SearchIdx.pm +++ b/lib/PublicInbox/SearchIdx.pm @@ -44,6 +44,7 @@ sub new { my $umask = _umask_for($perm); $self->{umask} = $umask; $self->{lock_path} = "$git_dir/ssoma.lock"; + $self->{git} = PublicInbox::Git->new($git_dir); $self->{xdb} = $self->with_umask(sub { if ($writable == 1) { require File::Path; @@ -349,7 +350,7 @@ sub rlog { my $h40 = $hex .'{40}'; my $addmsg = qr!^:000000 100644 \S+ ($h40) A\t${hex}{2}/${hex}{38}$!; my $delmsg = qr!^:100644 000000 ($h40) \S+ D\t${hex}{2}/${hex}{38}$!; - my $git = PublicInbox::Git->new($self->{git_dir}); + my $git = $self->{git}; my $log = $git->popen(qw/log --reverse --no-notes --no-color --raw -r --no-abbrev/, $range); my $latest; -- cgit v1.2.3-24-ge0c7