diff --git a/ChangeLog b/ChangeLog index c5750df82..300b6ba13 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,28 @@ +jilles 2007/02/20 00:34:28 UTC (20070220-3211) + Log: + Port over ratbox 2.2 r23507, r23624, r23626 (jilles/anfl): + Change TS6 JOIN processing + - don't send out simple modes in TS6 JOIN and TS5 SJOIN when + a local user joins an existing channel + - don't send out simple modes in TS6 JOIN and TS5 SJOIN when + propagating a TS6 JOIN + - don't interpret simple modes in an incoming TS6 JOIN + + This is to avoid desyncs when certain mode changes (e.g. -im) + cross with joins. A downside is that simple modes will be + more desynched when a JOIN creates a channel or lowers TS, + but that's less important. + + Update the TS6 specification to include this, and clarify + that TMODE can come from a server and that MODE must be + translated into TMODE from other servers too. + + + Changes: Modified: + +69 -39 trunk/doc/technical/ts6.txt (File Modified) + +19 -127 trunk/modules/core/m_join.c (File Modified) + + jilles 2007/02/11 16:54:43 UTC (20070211-3209) Log: Make -logfile work again. diff --git a/include/serno.h b/include/serno.h index 67d829f06..6354e4f2c 100644 --- a/include/serno.h +++ b/include/serno.h @@ -1 +1 @@ -#define SERNO "20070211-3209" +#define SERNO "20070220-3211" diff --git a/src/chmode.c b/src/chmode.c index fde7236fa..e6e0b79c4 100644 --- a/src/chmode.c +++ b/src/chmode.c @@ -22,7 +22,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA * - * $Id: chmode.c 3161 2007-01-25 07:23:01Z nenolod $ + * $Id: chmode.c 3213 2007-02-21 19:52:51Z jilles $ */ #include "stdinc.h" @@ -581,7 +581,10 @@ chm_ban(struct Client *source_p, struct Channel *chptr, me.name, source_p->name, chptr->chname, banptr->banstr, banptr->who, banptr->when); } - sendto_one(source_p, form_str(rpl_endlist), me.name, source_p->name, chptr->chname); + if (mode_type == CHFL_QUIET) + sendto_one(source_p, ":%s %d %s %s :End of Channel Quiet List", me.name, rpl_endlist, source_p->name, chptr->chname); + else + sendto_one(source_p, form_str(rpl_endlist), me.name, source_p->name, chptr->chname); return; }