We use sysseek for this file handle elsewhere (since it's passed
to `git rev-list --stdin' multiple times), and sysread ensures
we can use a larger read buffer than the tiny 8K BUFSIZ Perl +
glibc is contrained to.
This also ensures we autodie on sysread failures, since the
autodie import for `read' was missing and we don't call `read'
anywhere else in this file.
---
lib/PublicInbox/CodeSearchIdx.pm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/lib/PublicInbox/CodeSearchIdx.pm b/lib/PublicInbox/CodeSearchIdx.pm
index e17cba39..e31432b9 100644
--- a/lib/PublicInbox/CodeSearchIdx.pm
+++ b/lib/PublicInbox/CodeSearchIdx.pm
@@ -57,7 +57,7 @@ use PublicInbox::Git qw(%OFMT2HEXLEN);
use PublicInbox::Compat qw(uniqstr);
use PublicInbox::Aspawn qw(run_await);
use Carp ();
-use autodie qw(pipe open seek sysseek send);
+use autodie qw(pipe open sysread seek sysseek send);
our $DO_QUIT = 15; # signal number
our (
$LIVE_JOBS, # integer
@@ -385,10 +385,10 @@ sub fp_start ($$$) {
sub fp_fini { # run_git cb
my (undef, $self, $git, $prep_repo) = @_;
my $refs = $git->{-repo}->{refs} // die 'BUG: no {-repo}->{refs}';
- seek($refs, 0, SEEK_SET);
+ sysseek($refs, 0, SEEK_SET);
my $buf;
my $dig = PublicInbox::SHA->new(256);
- while (read($refs, $buf, 65536)) { $dig->add($buf) }
+ while (sysread($refs, $buf, 65536)) { $dig->add($buf) }
$git->{-repo}->{fp} = $dig->hexdigest;
}