about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ngircd/conf.c4
-rw-r--r--src/ngircd/login.c14
2 files changed, 11 insertions, 7 deletions
diff --git a/src/ngircd/conf.c b/src/ngircd/conf.c
index 5ee552e6..120db216 100644
--- a/src/ngircd/conf.c
+++ b/src/ngircd/conf.c
@@ -2000,9 +2000,11 @@ Handle_CHANNEL(const char *File, int Line, char *Var, char *Arg)
 			Config_Error_TooLong(File, Line, Var);
 		return;
 	}
-	if( strcasecmp( Var, "Autojoin" ) == 0 )
+	if( strcasecmp( Var, "Autojoin" ) == 0 ) {
 		/* Check autojoin */
 		chan->autojoin = Check_ArgIsTrue(Arg);
+		return;
+	}
 	if( strcasecmp( Var, "Key" ) == 0 ) {
 		/* Initial Channel Key (mode k) */
 		len = strlcpy(chan->key, Arg, sizeof(chan->key));
diff --git a/src/ngircd/login.c b/src/ngircd/login.c
index 0dd0bd89..3412e337 100644
--- a/src/ngircd/login.c
+++ b/src/ngircd/login.c
@@ -31,6 +31,7 @@
 #include "log.h"
 #include "messages.h"
 #include "ngircd.h"
+#include "irc-channel.h"
 #include "irc-info.h"
 #include "irc-mode.h"
 #include "irc-write.h"
@@ -201,24 +202,25 @@ Login_User_PostAuth(CLIENT *Client)
 	} else
 		IRC_SetPenalty(Client, 1);
 
-  /* Autojoin clients to the channels */
-  Login_Autojoin(Client);
+	/* Autojoin clients to the channels */
+	Login_Autojoin(Client);
 
 	return CONNECTED;
 }
 
 /**
  * Autojoin clients to the channels set by administrator
- * If autojoin is not set in Config or the channel is not available for search - do nothing
  *
+ * Do nothing if autojoin is not set in the configuration or the channel is not
+ * available (any more).
  **/
 GLOBAL void
 Login_Autojoin(CLIENT *Client)
 {
-	/** make an autojoin to each channel that is good for it **/
 	REQUEST Req;
 	const struct Conf_Channel *conf_chan;
-	size_t i, n, channel_count = array_length(&Conf_Channels, sizeof(*conf_chan));
+	size_t i, channel_count = array_length(&Conf_Channels, sizeof(*conf_chan));
+
 	conf_chan = array_start(&Conf_Channels);
 	assert(channel_count == 0 || conf_chan != NULL);
 
@@ -230,7 +232,7 @@ Login_Autojoin(CLIENT *Client)
 		Req.prefix = Client_ID(Client_ThisServer());
 		Req.command = "JOIN";
 		Req.argc = 1;
-		Req.argv[0] = conf_chan->name;
+		Req.argv[0] = (char *)conf_chan->name;
 		IRC_JOIN(Client, &Req);
 	}
 }