summaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2017-04-07 17:59:38 -0700
committerFrancisco Jerez <currojerez@riseup.net>2017-04-07 18:51:41 -0700
commitb3ef2250d367b6b539db5bdd7c5fb678d6f48bce (patch)
treeaaaa9cc506502e63a92c976a254eeb30373100c2 /gui
parent586f303c8c937811d7e65e73e69681c71574a044 (diff)
trace: Switch trace representation to memory pool.
Diffstat (limited to 'gui')
-rw-r--r--gui/saverthread.cpp8
-rw-r--r--gui/traceloader.cpp8
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;