Properly support notices to prefix'd users on a channel
Instead of hardcoding this behavior for @, +, and %, fetch the list of mode prefixes from the server's state and look for one of those instead. Closes #977
This commit is contained in:
parent
17671ec694
commit
7435572282
|
@ -948,19 +948,8 @@ inbound_notice (server *serv, char *to, char *nick, char *msg, char *ip, int id,
|
||||||
if (is_channel (serv, ptr))
|
if (is_channel (serv, ptr))
|
||||||
sess = find_channel (serv, ptr);
|
sess = find_channel (serv, ptr);
|
||||||
|
|
||||||
if (!sess && ptr[0] == '@')
|
/* /notice [mode-prefix]#channel should end up in that channel */
|
||||||
{
|
if (!sess && strchr(serv->nick_prefixes, ptr[0]) != NULL)
|
||||||
ptr++;
|
|
||||||
sess = find_channel (serv, ptr);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!sess && ptr[0] == '%')
|
|
||||||
{
|
|
||||||
ptr++;
|
|
||||||
sess = find_channel (serv, ptr);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!sess && ptr[0] == '+')
|
|
||||||
{
|
{
|
||||||
ptr++;
|
ptr++;
|
||||||
sess = find_channel (serv, ptr);
|
sess = find_channel (serv, ptr);
|
||||||
|
|
Loading…
Reference in New Issue