From a018f26eddbc72fdbf87fe5ee89112a53311fff1 Mon Sep 17 00:00:00 2001 From: danieldg Date: Tue, 2 Mar 2010 03:17:04 +0000 Subject: DelFd should not fail, it will leave a bad dangling pointer in that case git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12584 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/usermanager.cpp | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) (limited to 'src/usermanager.cpp') diff --git a/src/usermanager.cpp b/src/usermanager.cpp index 588af9510..15066fd28 100644 --- a/src/usermanager.cpp +++ b/src/usermanager.cpp @@ -195,22 +195,7 @@ void UserManager::QuitUser(User *user, const std::string &quitreason, const char { LocalUser* lu = IS_LOCAL(user); FOREACH_MOD(I_OnUserDisconnect,OnUserDisconnect(lu)); - UserIOHandler* eh = &lu->eh; - eh->DoWrite(); - if (eh->GetIOHook()) - { - try - { - eh->GetIOHook()->OnStreamSocketClose(eh); - } - catch (CoreException& modexcept) - { - ServerInstance->Logs->Log("USERS",DEBUG, "%s threw an exception: %s", modexcept.GetSource(), modexcept.GetReason()); - } - } - - ServerInstance->SE->DelFd(eh); - eh->Close(); + lu->eh.Close(); } /* -- cgit v1.2.3