Work around a QRegExp bug where a `\b never seems to match
authorManuel Nickschas <sputnick@quassel-irc.org>
Fri, 2 Jan 2009 19:38:44 +0000 (20:38 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Fri, 2 Jan 2009 19:38:44 +0000 (20:38 +0100)
Fixes #453. Bug filed upstream.

src/qtui/qtuimessageprocessor.cpp

index ac98bc8..1c1a82c 100644 (file)
@@ -138,7 +138,7 @@ void QtUiMessageProcessor::checkForHighlight(Message &msg) {
         nickList = myIdentity->nicks();
     }
     foreach(QString nickname, nickList) {
-      QRegExp nickRegExp("\\b" + QRegExp::escape(nickname) + "\\b",
+      QRegExp nickRegExp("\\b" + QRegExp::escape(nickname) + "(\\W|\\b|$)", // + "\\b", this does not seem to work for trailing ` -> upstream bug?
                           _nicksCaseSensitive ? Qt::CaseSensitive : Qt::CaseInsensitive);
       if(nickRegExp.indexIn(msg.contents()) >= 0) {
         msg.setFlags(msg.flags() | Message::Highlight);