diff --git a/ChangeLog b/ChangeLog index 645fc74ff..0a9b64609 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,7 @@ WeeChat ChangeLog ================= Sébastien Helleu -v0.3.6-dev, 2011-07-13 +v0.3.6-dev, 2011-07-18 Version 0.3.6 (under dev!) @@ -29,6 +29,7 @@ Version 0.3.6 (under dev!) hdata_get_string * api: fix bug with function config_set_desc_plugin (use immediately description for option when function is called) +* irc: fix crash when malformed IRC message 352 (WHO) is received (bug #33790) * irc: fix crash when command "/buffer close" is used in a server command to close server buffer during connection (bug #33763) * irc: fix crash when /join command is executed on a non-irc buffer (bug #33742) diff --git a/src/plugins/irc/irc-protocol.c b/src/plugins/irc/irc-protocol.c index f65e5537f..766692799 100644 --- a/src/plugins/irc/irc-protocol.c +++ b/src/plugins/irc/irc-protocol.c @@ -3395,9 +3395,10 @@ IRC_PROTOCOL_CALLBACK(352) * :server 352 mynick #channel user host server nick (*) (H/G) :0 flashcode */ - IRC_PROTOCOL_MIN_ARGS(9); - arg_start = (strcmp (argv[8], "*") == 0) ? 9 : 8; + + IRC_PROTOCOL_MIN_ARGS(arg_start + 1); + if (argv[arg_start][0] == ':') { pos_attr = NULL;