From 16d10f574bca429b872b8c2f055a127a9fc9a1ba Mon Sep 17 00:00:00 2001 From: Přemysl Janouch Date: Sun, 25 Sep 2016 14:06:24 +0200 Subject: degesch: simplify highlight detection --- degesch.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/degesch.c b/degesch.c index 9d57abb..a06ef24 100644 --- a/degesch.c +++ b/degesch.c @@ -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; -- cgit v1.2.3-70-g09d2