diff --git a/iocore/net/UnixNet.cc b/iocore/net/UnixNet.cc index a17d0d16763..9d8ede0a0d7 100644 --- a/iocore/net/UnixNet.cc +++ b/iocore/net/UnixNet.cc @@ -682,8 +682,9 @@ NetHandler::_close_vc(UnixNetVConnection *vc, ink_hrtime now, int &handle_event, // create a dummy event Event event; event.ethread = this_ethread(); - vc->handleEvent(EVENT_IMMEDIATE, &event); - ++handle_event; + if (vc->handleEvent(EVENT_IMMEDIATE, &event) == EVENT_DONE) { + ++handle_event; + } } } diff --git a/iocore/net/UnixNetVConnection.cc b/iocore/net/UnixNetVConnection.cc index c528f3527f4..4bee2f21073 100644 --- a/iocore/net/UnixNetVConnection.cc +++ b/iocore/net/UnixNetVConnection.cc @@ -1139,8 +1139,8 @@ UnixNetVConnection::mainEvent(int event, Event *e) (write.vio.mutex && wlock.get_mutex() != write.vio.mutex.get())) { #ifdef INACTIVITY_TIMEOUT if (e == active_timeout) -#endif e->schedule_in(HRTIME_MSECONDS(net_retry_delay)); +#endif return EVENT_CONT; }