summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/command_parse.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/command_parse.cpp b/src/command_parse.cpp
index 1701a7366..190ade6be 100644
--- a/src/command_parse.cpp
+++ b/src/command_parse.cpp
@@ -303,13 +303,17 @@ bool CommandParser::ProcessCommand(User *user, std::string &cmd)
}
/* 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)
+ bool do_more = true;
+ if (!user->ExemptFromPenalty)
{
- user->OverPenalty = true;
- ServerInstance->Log(DEBUG,"User %s now OVER penalty of 10", user->nick);
+ 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);
+ do_more = (user->Penalty < 10);
+ if (!do_more)
+ {
+ user->OverPenalty = true;
+ ServerInstance->Log(DEBUG,"User %s now OVER penalty of 10", user->nick);
+ }
}
/* activity resets the ping pending timer */