X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ircd%2Fm_endburst.c;h=46d51ae0a105ad8f84bc684ef35dcbb081ad982b;hb=refs%2Fheads%2Fupstream;hp=d2236b054a50f3fd1b0388cee007e4cb93cf586a;hpb=1b4e637606464f9af948a6e87879565f9fc1b726;p=ircu2.10.12-pk.git diff --git a/ircd/m_endburst.c b/ircd/m_endburst.c index d2236b0..46d51ae 100644 --- a/ircd/m_endburst.c +++ b/ircd/m_endburst.c @@ -81,18 +81,11 @@ */ #include "config.h" -#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 "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" @@ -100,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 @@ -133,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;