Clean up the ignore_find API to make it more powerful.

This way we prevent the creation of duplicate ignores since the old code
skipped the ignore_find call when a pattern was specified.
It should also cover all the cases where the ignores would be wrongly
overwritten, such as the case outlined in #78.
This commit is contained in:
LemonBoy 2016-01-03 19:49:18 +01:00
commit 609f3ba6c2
4 changed files with 28 additions and 19 deletions

View file

@ -66,7 +66,7 @@ static void sig_flood(IRC_SERVER_REC *server, const char *nick, const char *host
mask = g_strdup_printf("%s!%s", nick, host);
if (level & check_level) {
rec = ignore_find(server->tag, mask, NULL);
rec = ignore_find(server->tag, mask, NULL, NULL, 0);
if (rec == NULL)
autoignore_add(server, mask, level);
else