diff --git a/src/plugins/irc/irc-mode.c b/src/plugins/irc/irc-mode.c index e8ad61966..d828a13a4 100644 --- a/src/plugins/irc/irc-mode.c +++ b/src/plugins/irc/irc-mode.c @@ -446,12 +446,18 @@ irc_mode_channel_set (struct t_irc_server *server, { irc_nick_set_mode (server, channel, ptr_nick, (set_flag == '+'), pos[0]); + /* + * disable smart filtering if mode is sent + * to me, or based on the nick speaking time + */ if (smart_filter - && (irc_channel_nick_speaking_time_search (server, - channel, - ptr_nick->name, - 1) - || irc_server_strcasecmp (server, ptr_nick->name, server->nick) == 0)) + && ((irc_server_strcasecmp (server, + ptr_nick->name, + server->nick) == 0) + || irc_channel_nick_speaking_time_search (server, + channel, + ptr_nick->name, + 1))) { smart_filter = 0; }