mirror of
https://github.com/unrealircd/unrealircd.git
synced 2026-07-10 12:23:13 +02:00
Usermode +d (deaf) was broken. Clients were still receiving channel messages.
Reported by acidvegas, patch from Gottem (#4764).
This commit is contained in:
+4
-4
@@ -362,12 +362,12 @@ void sendto_channelprefix_butone(aClient *one, aClient *from, aChannel *chptr,
|
||||
for (lp = chptr->members; lp; lp = lp->next)
|
||||
{
|
||||
acptr = lp->cptr;
|
||||
if (acptr->from == one)
|
||||
continue; /* ...was the one I should skip
|
||||
or user not not a channel op */
|
||||
/* skip the one and deaf clients (unless sendanyways is set) */
|
||||
if (acptr->from == one || (IsDeaf(acptr) && !(sendanyways == 1)))
|
||||
continue;
|
||||
if (!prefix)
|
||||
goto good;
|
||||
if ((prefix & PREFIX_HALFOP) && (lp->flags & CHFL_HALFOP))
|
||||
if ((prefix & PREFIX_HALFOP) && (lp->flags & CHFL_HALFOP))
|
||||
goto good;
|
||||
if ((prefix & PREFIX_VOICE) && (lp->flags & CHFL_VOICE))
|
||||
goto good;
|
||||
|
||||
Reference in New Issue
Block a user