summaryrefslogtreecommitdiff
authorskyhusker <skyhusker>2005-06-09 17:30:09 (UTC)
committer skyhusker <skyhusker>2005-06-09 17:30:09 (UTC)
commit2ed64fcf5a3c93ce613e63461cb925568c7df887 (patch) (side-by-side diff)
treeac95266cc27b3bd50e374ab718aadf243ce99524
parent6be140832d97bb485ba98bc9ea0f5cf622330595 (diff)
downloadopie-2ed64fcf5a3c93ce613e63461cb925568c7df887.zip
opie-2ed64fcf5a3c93ce613e63461cb925568c7df887.tar.gz
opie-2ed64fcf5a3c93ce613e63461cb925568c7df887.tar.bz2
Fix #1667
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opieirc/ircmessageparser.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/noncore/net/opieirc/ircmessageparser.cpp b/noncore/net/opieirc/ircmessageparser.cpp
index 939cdae..32e1011 100644
--- a/noncore/net/opieirc/ircmessageparser.cpp
+++ b/noncore/net/opieirc/ircmessageparser.cpp
@@ -75,8 +75,9 @@ IRCNumericalMessageParserStruct IRCMessageParser::numericalParserProcTable[] = {
{ 377, "%1", "1", 0 }, // RPL_MOTD2
{ 378, "%1", "1", 0 }, // RPL_MOTD3
{ 391, QT_TR_NOOP("Time on server %1 is %2"), "1,2", 0 }, // RPL_TIME
{ 401, QT_TR_NOOP("Channel or nick %1 doesn't exists"), "1", 0 }, // ERR_NOSUCHNICK
+ { 403, QT_TR_NOOP("Channel %1 doesn't exists"), "1", 0 }, // ERR_ERR_NOSUCHCHANNEL
{ 406, QT_TR_NOOP("There is no history information for %1"), "1", 0 }, // ERR_WASNOSUCHNICK
{ 409, "%1", "1", 0 }, // ERR_NOORIGIN
{ 411, "%1", "1", 0 }, // ERR_NORECIPIENT
{ 412, "%1", "1", 0 }, // ERR_NOTEXTTOSEND
@@ -268,9 +269,9 @@ void IRCMessageParser::parseLiteralPrivMsg(IRCMessage *message) {
output.addParam(person);
emit outputReady(output);
}
else
- if (message->param(0).at(0) == '#' || message->param(0).at(0) == '+') {
+ if (IRCChannel::isValid(message->param(0))) {
/* IRC Channel message detected, verify sender, channel and display it */
IRCChannel *channel = m_session->getChannel(message->param(0).lower());
if (channel) {
IRCPerson mask(message->prefix());
@@ -489,9 +490,9 @@ void IRCMessageParser::parseCTCPDCC(IRCMessage *message) {
void IRCMessageParser::parseLiteralMode(IRCMessage *message) {
IRCPerson mask(message->prefix());
- if (message->param(0).startsWith("#")) {
+ if (IRCChannel::isValid(message->param(0))) {
IRCChannel *channel = m_session->getChannel(message->param(0).lower());
if (channel) {
QString temp, parameters = message->allParameters().right(message->allParameters().length() - channel->channelname().length() - 1);
QTextIStream stream(&parameters);