diff --git a/src/fe-common/irc/fe-ignore.c b/src/fe-common/irc/fe-ignore.c index 4cb0cf2b..b926e351 100644 --- a/src/fe-common/irc/fe-ignore.c +++ b/src/fe-common/irc/fe-ignore.c @@ -104,17 +104,23 @@ static void ignore_split_levels(const char *levels, int *level, int *xlevel) static void ignore_print(int index, IGNORE_REC *rec) { + GString *options; char *key, *levels; key = ignore_get_key(rec); levels = ignore_get_levels(rec->level, rec->except_level); + + options = g_string_new(NULL); + if (rec->regexp) g_string_sprintfa(options, "-regexp "); + if (rec->fullword) g_string_sprintfa(options, "-word "); + if (rec->replies) g_string_sprintfa(options, "-replies "); + if (options->len > 1) g_string_truncate(options, options->len-1); + printformat(NULL, NULL, MSGLEVEL_CLIENTCRAP, IRCTXT_IGNORE_LINE, index, key != NULL ? key : "", - levels != NULL ? levels : "", - rec->regexp ? " -regexp" : "", - rec->fullword ? " -word" : "", - rec->replies ? " -replies" : ""); + levels != NULL ? levels : "", options->str); + g_string_free(options, TRUE); g_free(key); g_free(levels); } diff --git a/src/fe-common/irc/module-formats.c b/src/fe-common/irc/module-formats.c index 05f431a4..283d95cf 100644 --- a/src/fe-common/irc/module-formats.c +++ b/src/fe-common/irc/module-formats.c @@ -196,7 +196,7 @@ FORMAT_REC fecommon_irc_formats[] = { { "ignore_not_found", "%_$0%_ is not being ignored", 1, { 0 } }, { "ignore_no_ignores", "There are no ignores", 0 }, { "ignore_header", "Ignorance List:", 0 }, - { "ignore_line", "$[-4]0 $1: $2 $3 $4", 5, { 1, 0, 0, 0, 0 } }, + { "ignore_line", "$[-4]0 $1: $2 $3 $4", 4, { 1, 0, 0, 0 } }, { "ignore_footer", "", 0 }, { "talking_in", "You are now talking in %_$0%_", 1, { 0 } }, { "query_start", "Starting query with %_$0%_", 1, { 0 } },