diff options
author | Francisco Jerez <currojerez@riseup.net> | 2017-04-07 17:59:38 -0700 |
---|---|---|
committer | Francisco Jerez <currojerez@riseup.net> | 2017-04-07 18:51:41 -0700 |
commit | b3ef2250d367b6b539db5bdd7c5fb678d6f48bce (patch) | |
tree | aaaa9cc506502e63a92c976a254eeb30373100c2 /gui | |
parent | 586f303c8c937811d7e65e73e69681c71574a044 (diff) |
trace: Switch trace representation to memory pool.
Diffstat (limited to 'gui')
-rw-r--r-- | gui/saverthread.cpp | 8 | ||||
-rw-r--r-- | gui/traceloader.cpp | 8 |
2 files changed, 8 insertions, 8 deletions
diff --git a/gui/saverthread.cpp b/gui/saverthread.cpp index 879ce90a..745de3fb 100644 --- a/gui/saverthread.cpp +++ b/gui/saverthread.cpp @@ -283,13 +283,13 @@ public: ApiArray apiArray = m_variant.value<ApiArray>(); QVector<QVariant> vals = apiArray.values(); - trace::Array *newArray = new trace::Array(vals.count()); + trace::Array *newArray = pool.alloc<trace::Array>(vals.count()); for (int i = 0; i < vals.count(); ++i) { EditVisitor visitor(vals[i]); array->values[i]->visit(visitor); if (array->values[i] == visitor.value()) { //non-editabled - delete newArray; + pool.free(newArray); m_editedValue = array; return; } @@ -326,7 +326,7 @@ overwriteValue(trace::Call *call, const QVariant &val, int index) origValue->visit(visitor); if (visitor.value() && origValue != visitor.value()) { - delete origValue; + pool.free(origValue); call->args[index].value = visitor.value(); } } @@ -374,7 +374,7 @@ void SaverThread::run() } else { writer.writeCall(call); } - delete call; + pool.free(call); } writer.close(); diff --git a/gui/traceloader.cpp b/gui/traceloader.cpp index 483f9912..a49adfd9 100644 --- a/gui/traceloader.cpp +++ b/gui/traceloader.cpp @@ -148,7 +148,7 @@ void TraceLoader::scanTrace() m_parser.getBookmark(startBookmark); numOfCalls = 0; } - delete call; + pool.free(call); } if (numOfCalls) { @@ -208,11 +208,11 @@ void TraceLoader::searchNext(const ApiTrace::SearchRequest &request) break; } } - delete call; + pool.free(call); return; } - delete call; + pool.free(call); } emit searchResult(request, ApiTrace::SearchResult_NotFound, 0); } @@ -485,7 +485,7 @@ TraceLoader::FrameContents::load(TraceLoader *loader, m_binaryDataSize += data.size(); } - delete call; + pool.free(call); if (apiCall->flags() & trace::CALL_FLAG_END_FRAME) { bEndFrameReached = true; |