/* Modify the user's penalty */
user->Penalty += cm->second->Penalty;
+ ServerInstance->Log(DEBUG,"Penalty for %s is now incremented to %d (%d added on)", user->nick, user->Penalty, cm->second->Penalty);
bool do_more = (user->Penalty < 10);
- if (do_more)
+ if (!do_more)
+ {
user->OverPenalty = true;
+ ServerInstance->Log(DEBUG,"User %s now OVER penalty of 10", user->nick);
+ }
/* activity resets the ping pending timer */
user->nping = ServerInstance->Time() + user->pingmax;
return;
}
- Server->Parser->DoLines(current);
+ /* If user is over penalty, dont process here, just build up */
+ if (!current->OverPenalty)
+ Server->Parser->DoLines(current);
return;
}
User *curr = *count2;
if (curr->OverPenalty)
+ {
+ Log(DEBUG,"Process line over penalty for %s", curr->nick);
Parser->DoLines(curr, true);
+ }
/* Knock a second off */
if (curr->Penalty)
{
+ Log(DEBUG,"Penalty for %s decremented to %d", curr->nick, curr->Penalty);
curr->Penalty--;
if (!curr->Penalty)
curr->OverPenalty = false;