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)
- Parser->DoLines(curr, true);
-
- /* Knock a second off */
if (curr->Penalty)
{
curr->Penalty--;
- if (!curr->Penalty)
+ if (curr->Penalty < 10)
+ Parser->DoLines(curr, true);
+ }
+
+ if (curr->OverPenalty)
+ {
+ if (curr->sendq.empty())
curr->OverPenalty = false;
}