summaryrefslogtreecommitdiff
path: root/src/irc/core/modes.c
diff options
context:
space:
mode:
authorWouter Coekaerts <coekie@irssi.org>2004-10-10 21:23:38 +0000
committercoekie <coekie@dbcabf3a-b0e7-0310-adc4-f8d773084564>2004-10-10 21:23:38 +0000
commit4b40495a5c3b64638eab037063fa774f7e0983f7 (patch)
treeac49df8e678dd99bf08b6c999a1585da82cd497e /src/irc/core/modes.c
parent8b8c58f4ef1014843f351c4d87e095cf62be151e (diff)
downloadirssi-4b40495a5c3b64638eab037063fa774f7e0983f7.zip
Also remember other (not k or l) modes with arguments
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3316 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src/irc/core/modes.c')
-rw-r--r--src/irc/core/modes.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/irc/core/modes.c b/src/irc/core/modes.c
index f58cc024..e7a8e63b 100644
--- a/src/irc/core/modes.c
+++ b/src/irc/core/modes.c
@@ -218,7 +218,6 @@ void modes_type_b(IRC_CHANNEL_REC *channel, const char *setby, char type,
if (mode == 'k') {
if (*arg == '\0' && type == '+')
arg = channel->key != NULL ? channel->key : "???";
- mode_set_arg(channel->server, newmode, type, 'k', arg, FALSE);
if (arg != channel->key) {
g_free_and_null(channel->key);
@@ -226,6 +225,8 @@ void modes_type_b(IRC_CHANNEL_REC *channel, const char *setby, char type,
channel->key = g_strdup(arg);
}
}
+
+ mode_set_arg(channel->server, newmode, type, mode, arg, FALSE);
}
/* Mode that needs parameter only for adding */
@@ -233,9 +234,10 @@ void modes_type_c(IRC_CHANNEL_REC *channel, const char *setby,
char type, char mode, char *arg, GString *newmode)
{
if (mode == 'l') {
- mode_set_arg(channel->server, newmode, type, 'l', arg, FALSE);
channel->limit = type == '-' ? 0 : atoi(arg);
}
+
+ mode_set_arg(channel->server, newmode, type, mode, arg, FALSE);
}
/* Mode that takes no parameter */