+2005-03-23 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/m_burst.c (ms_burst): Remove limit and keys when a channel
+ is wiped out during burst.
+
2005-03-22 Michael Poole <mdpoole@troilus.org>
* ircd/ircd_res.c (check_resolver_timeout): I give up. Use the
modebuf_mode(mbuf, MODE_DEL | chptr->mode.mode); /* wipeout modes */
chptr->mode.mode &= MODE_BURSTADDED | MODE_WASDELJOINS;
+ /* wipe out modes not represented in chptr->mode.mode */
+ if (chptr->mode.limit) {
+ modebuf_mode_uint(mbuf, MODE_DEL | MODE_LIMIT, chptr->mode.limit);
+ chptr->mode.limit = 0;
+ }
+ if (chptr->mode.key[0]) {
+ modebuf_mode_string(mbuf, MODE_DEL | MODE_KEY, chptr->mode.key, 0);
+ chptr->mode.key[0] = '\0';
+ }
+ if (chptr->mode.upass[0]) {
+ modebuf_mode_string(mbuf, MODE_DEL | MODE_UPASS, chptr->mode.upass, 0);
+ chptr->mode.upass[0] = '\0';
+ }
+ if (chptr->mode.apass[0]) {
+ modebuf_mode_string(mbuf, MODE_DEL | MODE_APASS, chptr->mode.apass, 0);
+ chptr->mode.apass[0] = '\0';
+ }
+
parse_flags |= (MODE_PARSE_SET | MODE_PARSE_WIPEOUT); /* wipeout keys */
/* mark bans for wipeout */