`git cat-file' can OOM or fail by other means. Don't let it
bring down the event loop with an uncaught exception.
my ($self) = @_;
my $inflight = gcf_inflight($self);
if ($inflight && @$inflight) {
- $self->cat_async_step($inflight);
+ eval { $self->cat_async_step($inflight) };
+ warn "E: $self->{git_dir}: $@" if $@;
return $self->close unless $self->{sock};
# don't loop here to keep things fair, but we must requeue
# if there's already-read data in pi_io_rbuf