X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmode.cpp;h=5b5523dfe4829d5ae1a402f3b8d5af293c8899ea;hb=6b43da7511ca875b64e58b84f72dd89485c0e7fd;hp=7d5a81d6969f12ab854372582576080ac810c519;hpb=7d3c3c785207dbcb18febfb6b28cfee8bb52dbb8;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/mode.cpp b/src/mode.cpp index 7d5a81d69..5b5523dfe 100644 --- a/src/mode.cpp +++ b/src/mode.cpp @@ -85,13 +85,13 @@ char* ModeParser::Grant(userrec *d,chanrec *chan,int MASK) switch (MASK) { case UCMODE_OP: - d->chans[i].channel->AddOppedUser((char*)d); + d->chans[i].channel->AddOppedUser(d); break; case UCMODE_HOP: - d->chans[i].channel->AddHalfoppedUser((char*)d); + d->chans[i].channel->AddHalfoppedUser(d); break; case UCMODE_VOICE: - d->chans[i].channel->AddVoicedUser((char*)d); + d->chans[i].channel->AddVoicedUser(d); break; } log(DEBUG,"grant: %s %s",d->chans[i].channel->name,d->nick); @@ -116,13 +116,13 @@ char* ModeParser::Revoke(userrec *d,chanrec *chan,int MASK) switch (MASK) { case UCMODE_OP: - d->chans[i].channel->DelOppedUser((char*)d); + d->chans[i].channel->DelOppedUser(d); break; case UCMODE_HOP: - d->chans[i].channel->DelHalfoppedUser((char*)d); + d->chans[i].channel->DelHalfoppedUser(d); break; case UCMODE_VOICE: - d->chans[i].channel->DelVoicedUser((char*)d); + d->chans[i].channel->DelVoicedUser(d); break; } log(DEBUG,"revoke: %s %s",d->chans[i].channel->name,d->nick); @@ -1310,7 +1310,7 @@ void cmd_mode::Handle (char **parameters, int pcnt, userrec *user) if (pcnt == 1) { /* just /modes #channel */ - WriteServ(user->fd,"324 %s %s +%s",user->nick, Ptr->name, chanmodes(Ptr,has_channel(user,Ptr))); + WriteServ(user->fd,"324 %s %s +%s",user->nick, Ptr->name, chanmodes(Ptr,Ptr->HasUser(user))); WriteServ(user->fd,"329 %s %s %d", user->nick, Ptr->name, Ptr->created); return; } @@ -1342,7 +1342,7 @@ void cmd_mode::Handle (char **parameters, int pcnt, userrec *user) } } - if (((Ptr) && (!has_channel(user,Ptr))) && (!is_uline(user->server)) && (IS_LOCAL(user))) + if ((IS_LOCAL(user)) && (!is_uline(user->server)) && (!Ptr->HasUser(user))) { WriteServ(user->fd,"442 %s %s :You're not on that channel!",user->nick, Ptr->name); return; @@ -1357,7 +1357,7 @@ void cmd_mode::Handle (char **parameters, int pcnt, userrec *user) return; if (MOD_RESULT == ACR_DEFAULT) { - if ((cstatus(user,Ptr) < STATUS_HOP) && (IS_LOCAL(user))) + if ((IS_LOCAL(user)) && (cstatus(user,Ptr) < STATUS_HOP)) { WriteServ(user->fd,"482 %s %s :You must be at least a half-operator to change modes on this channel",user->nick, Ptr->name); return;