X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fircserverhandler.cpp;h=25e5c4462569d8c0ba6926f04e572da654bf21a8;hp=93076ec50ea43b0787bb74631e625445c0966de2;hb=5cb19c841e567f26c34e77dbe254e530efacd6b3;hpb=fe73542fbcd2129069890ffe107639eaf26b1066 diff --git a/src/core/ircserverhandler.cpp b/src/core/ircserverhandler.cpp index 93076ec5..25e5c446 100644 --- a/src/core/ircserverhandler.cpp +++ b/src/core/ircserverhandler.cpp @@ -326,10 +326,14 @@ void IrcServerHandler::handleNotice(const QString &prefix, const QListisChannelName(target)) - target = nickFromMask(prefix); + } else { + if(!target.isEmpty() && network()->prefixes().contains(target[0])) + target = target.mid(1); + if(!network()->isChannelName(target)) + target = nickFromMask(prefix); + } networkConnection()->ctcpHandler()->parse(Message::Notice, prefix, target, params[1]); } @@ -398,9 +402,8 @@ void IrcServerHandler::handlePrivmsg(const QString &prefix, const QListisMyNick(target)) - target = nickFromMask(ircuser->nick()); + if(!network()->isChannelName(target)) + target = nickFromMask(prefix); // it's possible to pack multiple privmsgs into one param using ctcp // - > we let the ctcpHandler do the work