mirror of
https://github.com/weechat/weechat.git
synced 2026-07-06 17:53:13 +02:00
irc: fix update of channels modes with arguments when joining a channel (closes #1324)
This commit is contained in:
@@ -342,11 +342,13 @@ irc_mode_channel_set (struct t_irc_server *server,
|
||||
argc = 0;
|
||||
argv = NULL;
|
||||
if (modes_arguments)
|
||||
{
|
||||
argv = weechat_string_split (modes_arguments, " ",
|
||||
WEECHAT_STRING_SPLIT_STRIP_LEFT
|
||||
| WEECHAT_STRING_SPLIT_STRIP_RIGHT
|
||||
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS,
|
||||
0, &argc);
|
||||
}
|
||||
|
||||
current_arg = 0;
|
||||
|
||||
|
||||
@@ -3566,13 +3566,15 @@ IRC_PROTOCOL_CALLBACK(323)
|
||||
|
||||
IRC_PROTOCOL_CALLBACK(324)
|
||||
{
|
||||
const char *ptr_modes;
|
||||
const char *ptr_modes, *ptr_modes_args;
|
||||
struct t_irc_channel *ptr_channel;
|
||||
|
||||
IRC_PROTOCOL_MIN_ARGS(4);
|
||||
|
||||
ptr_modes = (argc > 4) ?
|
||||
((argv_eol[4][0] == ':') ? argv_eol[4] + 1 : argv_eol[4]) : NULL;
|
||||
|
||||
IRC_PROTOCOL_MIN_ARGS(4);
|
||||
ptr_modes_args = (argc > 5) ?
|
||||
((argv_eol[5][0] == ':') ? argv_eol[5] + 1 : argv_eol[5]) : NULL;
|
||||
|
||||
ptr_channel = irc_channel_search (server, argv[3]);
|
||||
if (ptr_channel)
|
||||
@@ -3581,7 +3583,7 @@ IRC_PROTOCOL_CALLBACK(324)
|
||||
if (argc > 4)
|
||||
{
|
||||
(void) irc_mode_channel_set (server, ptr_channel, host,
|
||||
ptr_modes, NULL);
|
||||
ptr_modes, ptr_modes_args);
|
||||
}
|
||||
}
|
||||
if (!ptr_channel
|
||||
|
||||
Reference in New Issue
Block a user