From 14b2a2223ec96f93873a425100949e1792d69d98 Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Sat, 4 Feb 2012 08:56:19 +0100 Subject: [PATCH] irc: fix self-highlight when using /me with an IRC bouncer like znc (bug #35123) --- ChangeLog | 4 +++- src/plugins/irc/irc-ctcp.c | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index a412218aa..c0e62dd3e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,7 @@ WeeChat ChangeLog ================= Sébastien Helleu -v0.3.7-dev, 2012-02-01 +v0.3.7-dev, 2012-02-04 Version 0.3.7 (under dev!) @@ -55,6 +55,8 @@ Version 0.3.7 (under dev!) nicklist_get_next_item * alias: add default alias umode => /mode $nick * aspell: fix URL detection (do not check spelling of URLs) (bug #34040) +* irc: fix self-highlight when using /me with an IRC bouncer like znc + (bug #35123) * irc: add alias "ctcp" for target buffer of CTCP messages * irc: add options irc.look.highlight_{server|channel|pv} to customize or disable default nick highlight (task #11128) diff --git a/src/plugins/irc/irc-ctcp.c b/src/plugins/irc/irc-ctcp.c index f2fafdeae..1fc11a1e1 100644 --- a/src/plugins/irc/irc-ctcp.c +++ b/src/plugins/irc/irc-ctcp.c @@ -917,10 +917,10 @@ irc_ctcp_recv (struct t_irc_server *server, const char *command, /* CTCP ACTION */ if (strcmp (arguments + 1, "ACTION") == 0) { + nick_is_me = (irc_server_strcasecmp (server, server->nick, nick) == 0); if (channel) { ptr_nick = irc_nick_search (server, channel, nick); - irc_channel_nick_speaking_add (channel, nick, (pos_args) ? @@ -929,9 +929,10 @@ irc_ctcp_recv (struct t_irc_server *server, const char *command, irc_channel_nick_speaking_time_remove_old (channel); irc_channel_nick_speaking_time_add (server, channel, nick, time (NULL)); - weechat_printf_tags (channel->buffer, irc_protocol_tags (command, + (nick_is_me) ? + "irc_action,notify_none,no_highlight" : "irc_action,notify_message", nick), "%s%s%s%s%s%s", @@ -944,7 +945,6 @@ irc_ctcp_recv (struct t_irc_server *server, const char *command, } else { - nick_is_me = (irc_server_strcasecmp (server, server->nick, nick) == 0); ptr_channel = irc_channel_search (server, remote_nick); if (!ptr_channel) {