From: Manuel Nickschas Date: Thu, 8 Sep 2011 18:56:32 +0000 (+0200) Subject: Fix core crash X-Git-Tag: 0.8-beta1~66 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=da215fcb9cd3096a3e223c87577d5d4ab8f8518b;hp=5aefc9ba3d4d0891092bfa342ca1d970bdf7ad4f;ds=sidebyside Fix core crash Some CTCP requests triggered a bug in the parser; this fixes the issue. --- diff --git a/src/core/ctcpparser.cpp b/src/core/ctcpparser.cpp index f4177c6e..b9dc2408 100644 --- a/src/core/ctcpparser.cpp +++ b/src/core/ctcpparser.cpp @@ -250,13 +250,10 @@ void CtcpParser::packedReply(CoreNetwork *net, const QString &bufname, const QLi answerSize += replies.at(i).size(); } - QByteArray quotedReply(answerSize, 0); - int nextPos = 0; - QByteArray &reply = quotedReply; + QByteArray quotedReply; + quotedReply.reserve(answerSize); for(int i = 0; i < replies.count(); i++) { - reply = replies.at(i); - quotedReply.replace(nextPos, reply.size(), reply); - nextPos += reply.size(); + quotedReply.append(replies.at(i)); } params << net->serverEncode(bufname) << quotedReply;