lib/PublicInbox/LEI.pm | 3 ++- diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm index 2dd21fc69a4492daf820069d0efd52104a3f0395..8adf70faf2d70dbcf629e103bdf9fd589b2673da 100644 --- a/lib/PublicInbox/LEI.pm +++ b/lib/PublicInbox/LEI.pm @@ -480,6 +480,7 @@ } sub fail ($$;$) { my ($self, $buf, $exit_code) = @_; + $self->{failed}++; err($self, $buf) if defined $buf; # calls fail_handler: $self->{pkt_op_p}->pkt_do('!') if $self->{pkt_op_p}; @@ -1043,7 +1044,7 @@ sub dclose { my ($self) = @_; delete $self->{-progress}; - _drop_wq($self); + _drop_wq($self) if $self->{failed}; close(delete $self->{1}) if $self->{1}; # may reap_compress $self->close if $self->{-event_init_done}; # PublicInbox::DS::close }