There's not much we can do about this aside from just ignoring errors and considering un-stat-able files as zero-sized. There's no syscalls which expose FUSE3 `readdirplus' type functionality to userspace to avoid this problem. --- lib/PublicInbox/Git.pm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/lib/PublicInbox/Git.pm b/lib/PublicInbox/Git.pm index 1dbd10b7..0fd621e1 100644 --- a/lib/PublicInbox/Git.pm +++ b/lib/PublicInbox/Git.pm @@ -486,9 +486,7 @@ sub packed_bytes { my ($self) = @_; my $n = 0; my $pack_dir = git_path($self, 'objects/pack'); - foreach my $p (bsd_glob("$pack_dir/*.pack", GLOB_NOSORT)) { - $n += -s $p; - } + $n += (-s $_ // 0) for (bsd_glob("$pack_dir/*.pack", GLOB_NOSORT)); $n }