X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ircd%2Fm_endburst.c;h=46d51ae0a105ad8f84bc684ef35dcbb081ad982b;hb=refs%2Fheads%2Fupstream-ssl;hp=9243d30bf4d41ae7b9e06433626abe18b12d9c2f;hpb=241fa041ccfa00c2f9f255c4c2a572d877b975e3;p=ircu2.10.12-pk.git diff --git a/ircd/m_endburst.c b/ircd/m_endburst.c index 9243d30..46d51ae 100644 --- a/ircd/m_endburst.c +++ b/ircd/m_endburst.c @@ -79,18 +79,13 @@ * note: it is guaranteed that parv[0]..parv[parc-1] are all * non-NULL pointers. */ -#if 0 -/* - * No need to include handlers.h here the signatures must match - * and we don't need to force a rebuild of all the handlers everytime - * we add a new one to the list. --Bleep - */ -#include "handlers.h" -#endif /* 0 */ +#include "config.h" + #include "channel.h" #include "client.h" #include "hash.h" #include "ircd.h" +#include "ircd_log.h" #include "ircd_reply.h" #include "ircd_string.h" #include "msg.h" @@ -98,7 +93,7 @@ #include "numnicks.h" #include "send.h" -#include +/* #include -- Now using assert in ircd_log.h */ /* * ms_end_of_burst - server message handler @@ -131,16 +126,12 @@ int ms_end_of_burst(struct Client* cptr, struct Client* sptr, int parc, char* pa /* Count through channels... */ for (chan = GlobalChannelList; chan; chan = next_chan) { next_chan = chan->next; - - if (!chan->members) { /* empty channel */ - if (!(chan->mode.mode & MODE_BURSTADDED)) - sendto_opmask_butone(0, SNO_OLDSNO, "Empty channel %H not added by " - "BURST!", chan); - - sub1_from_channel(chan); /* ok, nuke channel now */ - } - - chan->mode.mode &= ~MODE_BURSTADDED; + if (!chan->members && (chan->mode.mode & MODE_BURSTADDED)) { + /* Newly empty channel, schedule it for removal. */ + chan->mode.mode &= ~MODE_BURSTADDED; + sub1_from_channel(chan); + } else + chan->mode.mode &= ~MODE_BURSTADDED; } return 0;