1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-03 00:03:12 +02:00

irc: fix rejoin of channels with a key, ignore value "*" sent by server for key (bug #24131)

This commit is contained in:
Peter Boström
2012-09-18 18:08:21 +02:00
committed by Sebastien Helleu
parent b5f7c124ea
commit a80635c8b2
11 changed files with 76 additions and 9 deletions
+11 -4
View File
@@ -345,13 +345,20 @@ irc_mode_channel_set (struct t_irc_server *server,
if (pos[0] == 'k')
{
/* channel key */
if (channel->key)
if (set_flag == '-')
{
free (channel->key);
channel->key = NULL;
if (channel->key)
{
free (channel->key);
channel->key = NULL;
}
}
if ((set_flag == '+') && ptr_arg)
else if ((set_flag == '+')
&& ptr_arg && (strcmp (ptr_arg, "*") != 0))
{
/* replace key for +k, but ignore "*" as new key */
if (channel->key)
free (channel->key);
channel->key = strdup (ptr_arg);
}
}