1
0
mirror of https://github.com/osmarks/ngircd.git synced 2024-12-12 09:50:29 +00:00

Report ERR_NOTONCHANNEL when trying to part a channel one is not member of.

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).
This commit is contained in:
Alexander Barton 2008-04-24 23:52:54 +02:00
parent 54b17fc201
commit 523a6fad09

View File

@ -218,11 +218,16 @@ Channel_Part(CLIENT * Client, CLIENT * Origin, const char *Name, const char *Rea
assert(Reason != NULL);
chan = Channel_Search(Name);
if ((!chan) || (!Get_Cl2Chan(chan, Client))) {
if (!chan) {
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;