From: Marcus Eggenberger Date: Fri, 11 Jul 2008 14:31:02 +0000 (+0200) Subject: Fixing BR #216 (failing prefix detection) X-Git-Tag: 0.3.0~278 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=04c24f257803421e5b568dec4607006c63c0586a;hp=ea62a014f7b88d7f56cb759abb185d334ecb24d7 Fixing BR #216 (failing prefix detection) --- diff --git a/src/core/ircserverhandler.cpp b/src/core/ircserverhandler.cpp index 9bdb3c67..d5ff3334 100644 --- a/src/core/ircserverhandler.cpp +++ b/src/core/ircserverhandler.cpp @@ -432,14 +432,16 @@ void IrcServerHandler::handle001(const QString &prefix, const QList void IrcServerHandler::handle005(const QString &prefix, const QList ¶ms) { Q_UNUSED(prefix); const int numParams = params.size(); - if(numParams < 1) { - qWarning() << "IrcServerHandler::handle005(): received RPL_ISUPPORT (005) with too few parameters:" << serverDecode(params); + if(numParams == 0) { + emit displayMsg(Message::Error, BufferInfo::StatusBuffer, "", tr("Received RPL_ISUPPORT (005) without parameters!"), prefix); + return; } + emit displayMsg(Message::Server, BufferInfo::StatusBuffer, "", serverDecode(params).join(" "), prefix); + QString rpl_isupport_suffix = serverDecode(params.last()); - if(!rpl_isupport_suffix.toLower().contains("supported")) { - qWarning() << "Received invalid RPL_ISUPPORT! Suffix is:" << rpl_isupport_suffix << "Excpected: are supported by this server"; - return; + if(!rpl_isupport_suffix.toLower().contains("are supported by this server")) { + emit displayMsg(Message::Error, BufferInfo::StatusBuffer, "", tr("Received non RFC compliant RPL_ISUPPORT: this can lead to unexpected behavior!"), prefix); } QString rawSupport;