diff options
-rw-r--r-- | src/fe-common/core/fe-ignore.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/fe-common/core/fe-ignore.c b/src/fe-common/core/fe-ignore.c index 88dc48f7..39c4dd9f 100644 --- a/src/fe-common/core/fe-ignore.c +++ b/src/fe-common/core/fe-ignore.c @@ -118,7 +118,7 @@ static void cmd_ignore(const char *data) char *patternarg, *chanarg, *mask, *levels, *timestr, *servertag; char **channels; void *free_arg; - int new_ignore, msecs, level; + int new_ignore, msecs, level, flags; if (*data == '\0') { cmd_ignore_show(); @@ -156,9 +156,13 @@ static void cmd_ignore(const char *data) channels = (chanarg == NULL || *chanarg == '\0') ? NULL : g_strsplit(chanarg, ",", -1); - rec = ignore_find_full(servertag, mask, patternarg, channels, - IGNORE_FIND_PATTERN | ((level & MSGLEVEL_NO_ACT) ? IGNORE_FIND_NOACT : 0) | - ((level & MSGLEVEL_HIDDEN) ? IGNORE_FIND_HIDDEN : 0)); + flags = IGNORE_FIND_PATTERN; + if (level & MSGLEVEL_NO_ACT) + flags |= IGNORE_FIND_NOACT; + if (level & MSGLEVEL_HIDDEN) + flags |= IGNORE_FIND_HIDDEN; + + rec = ignore_find_full(servertag, mask, patternarg, channels, flags); new_ignore = rec == NULL; if (rec == NULL) { |