diff options
Diffstat (limited to 'lib/PublicInbox/SearchIdx.pm')
-rw-r--r-- | lib/PublicInbox/SearchIdx.pm | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/PublicInbox/SearchIdx.pm b/lib/PublicInbox/SearchIdx.pm index 17538027..86c435fd 100644 --- a/lib/PublicInbox/SearchIdx.pm +++ b/lib/PublicInbox/SearchIdx.pm @@ -355,8 +355,11 @@ sub index_body_text { my $rd; if ($$sref =~ /^(?:diff|---|\+\+\+) /ms) { # start patch-id in parallel my $git = ($self->{ibx} // $self->{eidx} // $self)->git; + my $fh = PublicInbox::IO::write_file '+>:utf8', undef, $$sref; + $fh->flush or die "flush: $!"; + sysseek($fh, 0, SEEK_SET); $rd = popen_rd($git->cmd(qw(patch-id --stable)), undef, - { 0 => [ ':utf8', $sref ] }); + { 0 => $fh }); } # split off quoted and unquoted blocks: |