From e7fd68c29e712785519742991c5085e0a247b019 Mon Sep 17 00:00:00 2001 From: scumjr Date: Thu, 19 May 2016 12:50:04 +0200 Subject: [PATCH] irc: fix NULL pointer dereference in 734 command callback --- src/plugins/irc/irc-protocol.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/plugins/irc/irc-protocol.c b/src/plugins/irc/irc-protocol.c index b6a9cae24..91280103b 100644 --- a/src/plugins/irc/irc-protocol.c +++ b/src/plugins/irc/irc-protocol.c @@ -5384,8 +5384,13 @@ IRC_PROTOCOL_CALLBACK(733) IRC_PROTOCOL_CALLBACK(734) { + char *pos_args; + IRC_PROTOCOL_MIN_ARGS(5); + pos_args = (argc > 5) ? + ((argv_eol[5][0] == ':') ? argv_eol[5] + 1 : argv_eol[5]) : NULL; + weechat_printf_date_tags ( irc_msgbuffer_get_target_buffer ( server, NULL, command, "monitor", NULL), @@ -5393,7 +5398,7 @@ IRC_PROTOCOL_CALLBACK(734) irc_protocol_tags (command, "irc_numeric", NULL, NULL), "%s%s (%s)", weechat_prefix ("error"), - (argv_eol[5][0] == ':') ? argv_eol[5] + 1 : argv_eol[5], + (pos_args && pos_args[0]) ? pos_args : "", argv[3]); return WEECHAT_RC_OK;