degesch: simplify highlight detection

This commit is contained in:
Přemysl Eric Janouch 2016-09-25 14:06:24 +02:00
parent 4cefa5ab1b
commit 16d10f574b
Signed by: p
GPG Key ID: B715679E3A361BE6
1 changed files with 4 additions and 3 deletions

View File

@ -5932,16 +5932,17 @@ irc_is_highlight (struct server *s, const char *message)
formatter_free (&f);
// Well, this is rather crude but it should make most users happy.
// Ideally we could do this at least in proper Unicode.
char *copy = irc_to_utf8 (stripped.str);
// We could do this in proper Unicode but that's two more conversions per
// message when both the nickname and the message are likely valid UTF-8.
char *copy = str_steal (&stripped);
cstr_transform (copy, s->irc_tolower);
str_free (&stripped);
char *nick = xstrdup (s->irc_user->nickname);
cstr_transform (nick, s->irc_tolower);
// Special characters allowed in nicknames by RFC 2812: []\`_^{|} and -
// Also excluded from the ASCII: common user channel prefixes: +%@&~
// XXX: why did I exclude those? It won't match when newbies use them.
const char *delimiters = ",.;:!?()<>/=#$* \t\r\n\v\f\"'";
bool result = false;