diff options
author | Eric Wong <e@80x24.org> | 2015-08-17 08:19:44 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2015-08-17 08:51:35 +0000 |
commit | c59caac2ee502dfd8b3acb1ca268c597719313f8 (patch) | |
tree | 8a44cb79c11d2995198e81ec99975b0aeb1de18a /public-inbox-mda | |
parent | 94f13e1f179c4b7c43d75f1154eec178718988c8 (diff) | |
download | public-inbox-c59caac2ee502dfd8b3acb1ca268c597719313f8.tar.gz |
We'll ignore errors, for now, but should eventually warn or log. And yes, this is a dirty, dirty hack but we'll fix this ASAP tomorrow.
Diffstat (limited to 'public-inbox-mda')
-rwxr-xr-x | public-inbox-mda | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/public-inbox-mda b/public-inbox-mda index 4348cb24..46a24a14 100755 --- a/public-inbox-mda +++ b/public-inbox-mda @@ -47,6 +47,11 @@ if (PublicInbox::MDA->precheck($filter, $dst->{address}) && my ($name, $email, $date) = PublicInbox::MDA->author_info($msg); + + END { + search_index_sync($main_repo) if ($? == 0); + }; + local $ENV{GIT_AUTHOR_NAME} = $name; local $ENV{GIT_AUTHOR_EMAIL} = $email; local $ENV{GIT_AUTHOR_DATE} = $date; @@ -79,3 +84,15 @@ sub do_spamc { return ($@ || $? || !defined($$out) || length($$out) == 0) ? 0 : 1; } + +sub search_index_sync { + my ($git_dir) = @_; + eval { + require PublicInbox::Search; + require PublicInbox::GitCatFile; + my $git = PublicInbox::GitCatFile->new($git_dir); + umask 0022; # XXX FIXME use git config core.sharedRepository + my $s = PublicInbox::Search->new($git_dir, 1); + $s->index_sync($git); + }; +} |