diff options
Diffstat (limited to 'listener.c')
-rw-r--r-- | listener.c | 4 |
1 files changed, 0 insertions, 4 deletions
@@ -433,10 +433,8 @@ listener_read_cb(evutil_socket_t fd, short what, void *p) ++lev->refcnt; cb = lev->cb; user_data = lev->user_data; - UNLOCK(lev); cb(lev, new_fd, (struct sockaddr*)&ss, (int)socklen, user_data); - LOCK(lev); if (lev->refcnt == 1) { int freed = listener_decref_and_unlock(lev); EVUTIL_ASSERT(freed); @@ -458,9 +456,7 @@ listener_read_cb(evutil_socket_t fd, short what, void *p) ++lev->refcnt; errorcb = lev->errorcb; user_data = lev->user_data; - UNLOCK(lev); errorcb(lev, user_data); - LOCK(lev); listener_decref_and_unlock(lev); } else { event_sock_warn(fd, "Error from accept() call"); |