X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fctcphandler.cpp;h=ba4896484b32baf5a8f6c0145eef08996cc23283;hp=23753ccb746bf53a692f7f5878a16cd75e3f7b79;hb=0b9f74984780aacbe85ca04c44ec6304c86557c2;hpb=d43df4abb53a5ea90fa8e7bc939bdcfb6fc141c3 diff --git a/src/core/ctcphandler.cpp b/src/core/ctcphandler.cpp index 23753ccb..ba489648 100644 --- a/src/core/ctcphandler.cpp +++ b/src/core/ctcphandler.cpp @@ -94,7 +94,7 @@ void CtcpHandler::parse(Message::Type messageType, const QString &prefix, const ? CtcpReply : CtcpQuery; - quint8 flags = (messageType == Message::Notice && !network()->isChannelName(target)) + Message::Flags flags = (messageType == Message::Notice && !network()->isChannelName(target)) ? Message::Redirected : Message::None; @@ -108,13 +108,11 @@ void CtcpHandler::parse(Message::Type messageType, const QString &prefix, const xdelimEndPos = dequotedMessage.indexOf(XDELIM, xdelimPos + 1); if(xdelimEndPos == -1) { - // no matching end delimiter found... - dequotedMessage = dequotedMessage.mid(xdelimPos + 1); - break; - } else { - ctcp = xdelimDequote(dequotedMessage.mid(xdelimPos + 1, xdelimEndPos - xdelimPos - 1)); - dequotedMessage = dequotedMessage.mid(xdelimEndPos + 1); + // no matching end delimiter found... treat rest of the message as ctcp + xdelimEndPos = dequotedMessage.count(); } + ctcp = xdelimDequote(dequotedMessage.mid(xdelimPos + 1, xdelimEndPos - xdelimPos - 1)); + dequotedMessage = dequotedMessage.mid(xdelimEndPos + 1); //dispatch the ctcp command QString ctcpcmd = userDecode(target, ctcp.left(spacePos));