ngIRCd CVSHEAD
+ - Servers other than the destination server didn't clean up the invite
+ list of an "invite-only" channel properly when an INVITE'd user joined.
- Changed the reply of the MODE command to match the syntax of the
original ircd exactly: the unnecessary but missing ":" before the last
parameter has been added.
--
-$Id: ChangeLog,v 1.229 2004/02/29 16:28:44 alex Exp $
+$Id: ChangeLog,v 1.230 2004/04/09 20:46:46 alex Exp $
#include "portab.h"
-static char UNUSED id[] = "$Id: irc-channel.c,v 1.26 2004/03/11 22:16:31 alex Exp $";
+static char UNUSED id[] = "$Id: irc-channel.c,v 1.27 2004/04/09 20:46:48 alex Exp $";
#include "imp.h"
#include <assert.h>
}
}
- /* Lokaler Client? */
+ /* Local client? */
if( Client_Type( Client ) == CLIENT_USER )
{
/* Test if the user has reached his maximum channel count */
}
}
}
+ else
+ {
+ /* Remote server: we don't need to know whether the
+ * client is invited or not, but we have to make sure
+ * that the "one shot" entries (generated by INVITE
+ * commands) in this list become deleted when a user
+ * joins a channel this way. */
+ chan = Channel_Search( channame );
+ if( chan != NULL ) (VOID)Lists_CheckInvited( target, chan );
+ }
/* Channel joinen (und ggf. anlegen) */
if( ! Channel_Join( target, channame ))