From 676cd17c41c70acf2b295334220e555f0fabfde8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Fonseca?= Date: Sat, 24 Mar 2012 09:46:24 +0000 Subject: [PATCH] Don't read all json output to memory. Should help with big dumps. --- gui/retracer.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gui/retracer.cpp b/gui/retracer.cpp index 7a49ae9..865f61f 100644 --- a/gui/retracer.cpp +++ b/gui/retracer.cpp @@ -182,7 +182,6 @@ void RetraceProcess::start() void RetraceProcess::replayFinished(int exitCode, QProcess::ExitStatus exitStatus) { - QByteArray output; QString msg; if (exitStatus != QProcess::NormalExit) { @@ -193,8 +192,8 @@ void RetraceProcess::replayFinished(int exitCode, QProcess::ExitStatus exitStatu if (m_captureState || m_captureThumbnails) { if (m_captureState) { bool ok = false; - output = m_process->readAllStandardOutput(); - QVariantMap parsedJson = m_jsonParser->parse(output, &ok).toMap(); + m_process->setReadChannel(QProcess::StandardOutput); + QVariantMap parsedJson = m_jsonParser->parse(m_process, &ok).toMap(); ApiTraceState *state = new ApiTraceState(parsedJson); emit foundState(state); msg = tr("State fetched."); @@ -250,6 +249,7 @@ void RetraceProcess::replayFinished(int exitCode, QProcess::ExitStatus exitStatu msg = tr("Thumbnails fetched."); } } else { + QByteArray output; output = m_process->readAllStandardOutput(); msg = QString::fromUtf8(output); } -- 2.43.0