From ff512ebd30643381e01950aafaebdbde2c512143 Mon Sep 17 00:00:00 2001 From: Marcus Eggenberger Date: Mon, 18 Feb 2008 23:47:15 +0000 Subject: [PATCH 1/1] fixed bug in ctcp parser --- src/core/ctcphandler.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/core/ctcphandler.cpp b/src/core/ctcphandler.cpp index e6b53443..84930880 100644 --- a/src/core/ctcphandler.cpp +++ b/src/core/ctcphandler.cpp @@ -110,12 +110,20 @@ void CtcpHandler::parse(Message::Type messageType, const QString &prefix, const ctcp = xdelimDequote(dequotedMessage.mid(xdelimPos + 1, xdelimEndPos - xdelimPos - 1)); dequotedMessage = dequotedMessage.mid(xdelimEndPos + 1); - + //dispatch the ctcp command - spacePos = ctcp.indexOf(' '); QString ctcpcmd = userDecode(target, ctcp.left(spacePos)); QString ctcpparam = userDecode(target, ctcp.mid(spacePos + 1)); + spacePos = ctcp.indexOf(' '); + if(spacePos != -1) { + ctcpcmd = userDecode(target, ctcp.left(spacePos)); + ctcpparam = userDecode(target, ctcp.mid(spacePos + 1)); + } else { + ctcpcmd = userDecode(target, ctcp); + ctcpparam = QString(); + } + handle(ctcpcmd, Q_ARG(CtcpType, ctcptype), Q_ARG(QString, prefix), Q_ARG(QString, target), Q_ARG(QString, ctcpparam)); } -- 2.20.1