summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel De Graaf <danieldg@inspircd.org>2010-09-28 11:01:45 -0400
committerDaniel De Graaf <danieldg@inspircd.org>2010-09-28 11:01:45 -0400
commit2d0e736f335391b21b63461953c397b889daf7ec (patch)
tree5bd9975e6f947cb67b3023a6bd12318589658373
parent7aad2ac848ff19113b64259cebcdd08c4b9fcaab (diff)
Fix kicking permisisons - GetPrefixChar returns the prefix, not the mode character
-rw-r--r--src/channels.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/channels.cpp b/src/channels.cpp
index 01450ce61..5779fb50b 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -523,10 +523,10 @@ void Channel::KickUser(User *src, User *user, const char* reason)
if (res == MOD_RES_DENY)
return;
- if (res == MOD_RES_PASSTHRU)
+ if (res == MOD_RES_PASSTHRU && !memb->modes.empty())
{
int them = this->GetPrefixValue(src);
- char us = GetPrefixChar(user)[0];
+ char us = memb->modes[0];
ModeHandler* mh = ServerInstance->Modes->FindMode(us, MODETYPE_CHANNEL);
int min = mh ? mh->GetLevelRequired() : HALFOP_VALUE;
if (them < HALFOP_VALUE || them < min)