Commit Diff
Diff:
2f8877ded4f0831a2f6033c589fcd36d9cecd0ba
77f68b4fd140404848e203a6634ecd472294723f
Commit:
77f68b4fd140404848e203a6634ecd472294723f
Tree:
858870eedcd67ddfcb42a3d79719f842b856c087
Author:
Alexander Barton <alex@barton.de>
Committer:
Alexander Barton <alex@barton.de>
Date:
Fri Jan 13 09:40:20 2012 UTC
Message:
JOIN command: don't check channel limit if already member Don't check the channel limit and don't report "too many channels" when trying to join a channel that the client is already a member of.
blob - 52ba0930caac5c9ab89f189dd684fe65e7976529
blob + 196b5477487cebdfa0c073277a1ff81115a7d798
--- src/ngircd/irc-channel.c
+++ src/ngircd/irc-channel.c
@@ -369,6 +369,12 @@ IRC_JOIN( CLIENT *Client, REQUEST *Req )
/* Local client? */
if (Client_Type(Client) == CLIENT_USER) {
+ if (chan) {
+ /* Already existing channel: already member? */
+ if (Channel_IsMemberOf(chan, Client))
+ goto join_next;
+ }
+
/* Test if the user has reached the channel limit */
if ((Conf_MaxJoins > 0) &&
(Channel_CountForUser(Client) >= Conf_MaxJoins))
IRCNow