lib/PublicInbox/Listener.pm | 3 ++- diff --git a/lib/PublicInbox/Listener.pm b/lib/PublicInbox/Listener.pm index 928d9301902fdb059ddbd4a2603af92cb6848736..cdfd34a275bc532c4bc71dd3c14485751351d899 100644 --- a/lib/PublicInbox/Listener.pm +++ b/lib/PublicInbox/Listener.pm @@ -40,7 +40,8 @@ # a single accept() here to be, umm..., acceptable # on high-traffic sites. if (my $addr = accept(my $c, $sock)) { IO::Handle::blocking($c, 0); # no accept4 :< - $self->{post_accept}->($c, $addr, $sock); + eval { $self->{post_accept}->($c, $addr, $sock) }; + warn "E: $@\n" if $@; $self->requeue; } elsif ($! == EAGAIN || $! == ECONNABORTED || $! == EPERM) { # EAGAIN is common and likely