diff options
-rw-r--r-- | src/mode.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mode.cpp b/src/mode.cpp index de994dd5b..83e79c243 100644 --- a/src/mode.cpp +++ b/src/mode.cpp @@ -318,7 +318,8 @@ char* ModeParser::TakeHops(userrec *user,char *dest,chanrec *chan,int status) return NULL; if (MOD_RESULT == ACR_DEFAULT) { - if ((status < STATUS_OP) && (!is_uline(user->server))) + /* Tweak by Brain suggested by w00t, allow a halfop to dehalfop themselves */ + if ((user != d) && ((status < STATUS_OP) && (!is_uline(user->server)))) { WriteServ(user->fd,"482 %s %s :You are not a channel operator",user->nick, chan->name); return NULL; |