diff options
Diffstat (limited to 'src/channels.cpp')
-rw-r--r-- | src/channels.cpp | 4 |
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) |