If a user is +b on a channel, and set::allow-userhost-change force-rejoin is used, a part/join is not sent in order to prevent flooding

This commit is contained in:
codemastr 2004-11-25 23:54:21 +00:00
parent 81de8345d2
commit 637a36a2af
2 changed files with 11 additions and 0 deletions

View file

@ -475,3 +475,5 @@
- Using /invite with no parameters now lists the channels you are invited to but have not
yet joined (#0002190) suggested by sac.
- Added some missing operflags to /stats O and SVSO (#0002193) reported by Bugz.
- If a user is +b on a channel, and set::allow-userhost-change force-rejoin is used, a
part/join is not sent in order to prevent flooding (#0001933) suggested by Z3l3zT.

View file

@ -4937,6 +4937,11 @@ char *comment = "Rejoining because of user@host change";
chptr = tmp->chptr;
if (!chptr)
continue; /* Possible? */
/* If the user is banned, don't do it */
if (is_banned(sptr, chptr, BANCHK_JOIN))
continue;
if ((chptr->mode.mode & MODE_AUDITORIUM) &&
!(tmp->flags & (CHFL_CHANOWNER|CHFL_CHANPROT|CHFL_CHANOP)))
{
@ -4964,6 +4969,10 @@ char flagbuf[8]; /* For holding "qohva" and "*~@%+" */
if (!chptr)
continue; /* Is it possible? */
/* If the user is banned, don't do it */
if (is_banned(sptr, chptr, BANCHK_JOIN))
continue;
if ((chptr->mode.mode & MODE_AUDITORIUM) &&
!(flags & (CHFL_CHANOWNER|CHFL_CHANPROT|CHFL_CHANOP)))
{