diff options
author | attilamolnar <attilamolnar@hush.com> | 2013-04-28 00:32:14 +0200 |
---|---|---|
committer | attilamolnar <attilamolnar@hush.com> | 2013-04-28 00:32:14 +0200 |
commit | 8790551dc182cd8804ee7d8ef89ccb31067cc2a4 (patch) | |
tree | fa411b244ae8541e49eb126a9d15a7b5a13504db /src/users.cpp | |
parent | 021c09faff4be2e37fa86b0fe3e61707ffddab27 (diff) | |
parent | 9b96fee72a3720e6d12812243edb4192d0790b34 (diff) |
Merge insp20
Diffstat (limited to 'src/users.cpp')
-rw-r--r-- | src/users.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/users.cpp b/src/users.cpp index 623af7fe3..cdc6beed2 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -416,6 +416,7 @@ void UserIOHandler::OnDataReady() ServerInstance->Users->QuitUser(user, "RecvQ exceeded"); ServerInstance->SNO->WriteToSnoMask('a', "User %s RecvQ of %lu exceeds connect class maximum of %lu", user->nick.c_str(), (unsigned long)recvq.length(), user->MyClass->GetRecvqMax()); + return; } unsigned long sendqmax = ULONG_MAX; if (!user->HasPrivPermission("users/flood/increased-buffers")) @@ -506,6 +507,8 @@ CullResult LocalUser::cull() // is only a precaution currently. if (localuseriter != ServerInstance->Users->local_users.end()) ServerInstance->Users->local_users.erase(localuseriter); + else + ServerInstance->Logs->Log("USERS", LOG_DEFAULT, "ERROR: LocalUserIter does not point to a valid entry for " + this->nick); ClearInvites(); eh.cull(); @@ -786,6 +789,12 @@ void User::InvalidateCache() bool User::ChangeNick(const std::string& newnick, bool force) { + if (quitting) + { + ServerInstance->Logs->Log("USERS", LOG_DEFAULT, "ERROR: Attempted to change nick of a quitting user: " + this->nick); + return false; + } + ModResult MOD_RESULT; if (force) |