From 034488fc4aca4fb85c923d881f4b95675eba37b6 Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Sun, 9 Feb 2014 17:31:57 +0100 Subject: Store the EventHandler* in the kevent/epoll_event/portev struct This removes the need to call GetRef() for every socket in DispatchEvents() --- src/socketengines/socketengine_ports.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/socketengines/socketengine_ports.cpp') diff --git a/src/socketengines/socketengine_ports.cpp b/src/socketengines/socketengine_ports.cpp index d7425813e..c30400107 100644 --- a/src/socketengines/socketengine_ports.cpp +++ b/src/socketengines/socketengine_ports.cpp @@ -157,8 +157,8 @@ int SocketEngine::DispatchEvents() // Copy these in case the vector gets resized and ev invalidated const int fd = ev.portev_object; const int portev_events = ev.portev_events; - EventHandler* eh = GetRef(fd); - if (!eh) + EventHandler* eh = static_cast(ev.portev_user); + if (eh->GetFd() < 0) continue; int mask = eh->GetEventMask(); -- cgit v1.3.1-10-gc9f91