When trying to part a channel ("PART #channel") the client is not member of
the daemon now correctly reports the numeric ERR_NOTONCHANNEL (442) insted
of ERR_NOSUCHCHANNEL (403).
assert(Reason != NULL);
chan = Channel_Search(Name);
assert(Reason != NULL);
chan = Channel_Search(Name);
- if ((!chan) || (!Get_Cl2Chan(chan, Client))) {
IRC_WriteStrClient(Client, ERR_NOSUCHCHANNEL_MSG,
Client_ID(Client), Name);
return false;
}
IRC_WriteStrClient(Client, ERR_NOSUCHCHANNEL_MSG,
Client_ID(Client), Name);
return false;
}
+ if (!Get_Cl2Chan(chan, Client)) {
+ IRC_WriteStrClient(Client, ERR_NOTONCHANNEL_MSG,
+ Client_ID(Client), Name);
+ return false;
+ }
if (!Remove_Client(REMOVE_PART, chan, Client, Origin, Reason, true))
return false;
if (!Remove_Client(REMOVE_PART, chan, Client, Origin, Reason, true))
return false;