diff options
-rw-r--r-- | include/socketengines/socketengine_select.h | 2 | ||||
-rw-r--r-- | src/socketengines/socketengine_select.cpp | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/include/socketengines/socketengine_select.h b/include/socketengines/socketengine_select.h index 3540c0944..0131297f1 100644 --- a/include/socketengines/socketengine_select.h +++ b/include/socketengines/socketengine_select.h @@ -41,6 +41,8 @@ private: /** The read set and write set, populated before each call to select(). */ fd_set wfdset, rfdset, errfdset; + + EventHandler** ev; public: /** Create a new SelectEngine * @param Instance The creator of this object diff --git a/src/socketengines/socketengine_select.cpp b/src/socketengines/socketengine_select.cpp index 5a5d61147..24c3d5637 100644 --- a/src/socketengines/socketengine_select.cpp +++ b/src/socketengines/socketengine_select.cpp @@ -27,11 +27,13 @@ SelectEngine::SelectEngine(InspIRCd* Instance) : SocketEngine(Instance) memset(writeable, 0, sizeof(writeable)); ref = new EventHandler* [GetMaxFds()]; memset(ref, 0, GetMaxFds() * sizeof(EventHandler*)); + ev = new EventHandler* [GetMaxFds()]; } SelectEngine::~SelectEngine() { delete[] ref; + delete[] ev; } bool SelectEngine::AddFd(EventHandler* eh) @@ -92,7 +94,6 @@ int SelectEngine::DispatchEvents() int result = 0; timeval tval; int sresult = 0; - EventHandler* ev[GetMaxFds()]; socklen_t codesize; int errcode; |