if (lu->registered == REG_ALL)
ServerInstance->SNO->WriteToSnoMask('q',"Client exiting: %s (%s) [%s]", user->GetFullRealHost().c_str(), user->GetIPString().c_str(), operreason->c_str());
+ local_users.erase(lu);
}
if (!clientlist.erase(user->nick))
VAFORMAT(message, text, text);
message = "NOTICE $" + ServerInstance->Config->ServerName + " :" + message;
- for (LocalUserList::const_iterator i = local_users.begin(); i != local_users.end(); i++)
+ for (LocalList::const_iterator i = local_users.begin(); i != local_users.end(); ++i)
{
User* t = *i;
t->WriteServ(message);
{
// Reset the already_sent IDs so we don't wrap it around and drop a message
LocalUser::already_sent_id = 0;
- for (LocalUserList::const_iterator i = this->local_users.begin(); i != this->local_users.end(); i++)
+ for (LocalList::const_iterator i = local_users.begin(); i != local_users.end(); ++i)
{
(**i).already_sent = 0;
(**i).RemoveExpiredInvites();
/*
* loop over all local users..
*/
- for (LocalUserList::iterator i = local_users.begin(); i != local_users.end(); ++i)
+ for (LocalList::iterator i = local_users.begin(); i != local_users.end(); ++i)
{
LocalUser* curr = *i;
- if (curr->quitting)
- continue;
-
if (curr->CommandFloodPenalty || curr->eh.getSendQSize())
{
unsigned int rate = curr->MyClass->GetCommandRate();
switch (curr->registered)
{
case REG_ALL:
- if (ServerInstance->Time() > curr->nping)
+ if (ServerInstance->Time() >= curr->nping)
{
// This user didn't answer the last ping, remove them
if (!curr->lastping)