From 73bda18110cfb52eecf7ad1089cd99d68f73e568 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Tue, 7 Apr 2020 13:18:42 -0400 Subject: Check ignores against id Otherwise they do not work correctly for QUIT and NICK. This also lets you ignore private messages only by putting the nick in the third field. --- ignore.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'ignore.c') diff --git a/ignore.c b/ignore.c index d65c35a..8aa3e1b 100644 --- a/ignore.c +++ b/ignore.c @@ -58,11 +58,11 @@ bool ignoreRemove(const char *pattern) { return found; } -enum Heat ignoreCheck(enum Heat heat, const struct Message *msg) { +enum Heat ignoreCheck(enum Heat heat, uint id, const struct Message *msg) { char match[512]; snprintf( match, sizeof(match), "%s!%s@%s %s %s", - msg->nick, msg->user, msg->host, msg->cmd, (msg->params[0] ?: "") + msg->nick, msg->user, msg->host, msg->cmd, idNames[id] ); for (size_t i = 0; i < ignore.len; ++i) { if (fnmatch(ignore.patterns[i], match, FNM_CASEFOLD)) continue; -- cgit 1.4.1