X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoresessioneventprocessor.cpp;h=ca9b92df7259a4398bef8887cf87d7252eb995dd;hp=0cee2444f6ca85c3a0d7939a958f9020d941eb3e;hb=8afb9857fdd184412b3d43e4402c3dda102ca4c5;hpb=9c59843b54202a69f4c01171b28bf79b26c27975 diff --git a/src/core/coresessioneventprocessor.cpp b/src/core/coresessioneventprocessor.cpp index 0cee2444..ca9b92df 100644 --- a/src/core/coresessioneventprocessor.cpp +++ b/src/core/coresessioneventprocessor.cpp @@ -193,7 +193,8 @@ void CoreSessionEventProcessor::processIrcEventCap(IrcEvent *e) queueCurrentCap = true; } else if (availableCapPair.at(0).startsWith("away-notify") || availableCapPair.at(0).startsWith("account-notify") || - availableCapPair.at(0).startsWith("extended-join")) { + availableCapPair.at(0).startsWith("extended-join") || + availableCapPair.at(0).startsWith("userhost-in-names")) { // Always request these capabilities if available queueCurrentCap = true; } @@ -959,6 +960,11 @@ void CoreSessionEventProcessor::processIrcEvent353(IrcEvent *e) nick = nick.mid(1); } + // If userhost-in-names capability is enabled, the following will be + // in the form "nick!user@host" rather than "nick". This works without + // special handling as the following use nickFromHost() as needed. + // See: http://ircv3.net/specs/extensions/userhost-in-names-3.2.html + nicks << nick; modes << mode; }