From: Zack Rusin Date: Sun, 28 Aug 2011 06:23:47 +0000 (-0400) Subject: Preallocate a few lists with the correct size. X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=f22d799f81179ccc7dad440a44af48f153ec9061;p=apitrace Preallocate a few lists with the correct size. shaves a few megs that were lost due to overallocation --- diff --git a/gui/apitracecall.cpp b/gui/apitracecall.cpp index ab358c1..6a93d6d 100644 --- a/gui/apitracecall.cpp +++ b/gui/apitracecall.cpp @@ -581,9 +581,9 @@ ApiTraceCall::ApiTraceCall(ApiTraceFrame *parentFrame, const Trace::Call *call) if (!m_signature) { QStringList argNames; + argNames.reserve(call->sig->num_args); for (int i = 0; i < call->sig->num_args; ++i) { - argNames += - QString::fromStdString(call->sig->arg_names[i]); + argNames += QString::fromStdString(call->sig->arg_names[i]); } m_signature = new ApiTraceCallSignature(name, argNames); trace->addSignature(m_signature); @@ -593,10 +593,11 @@ ApiTraceCall::ApiTraceCall(ApiTraceFrame *parentFrame, const Trace::Call *call) call->ret->visit(retVisitor); m_returnValue = retVisitor.variant(); } + m_argValues.reserve(call->args.size()); for (int i = 0; i < call->args.size(); ++i) { VariantVisitor argVisitor; call->args[i]->visit(argVisitor); - m_argValues += argVisitor.variant(); + m_argValues.append(argVisitor.variant()); if (m_argValues[i].type() == QVariant::ByteArray) { m_hasBinaryData = true; m_binaryDataIndex = i;