summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilian Wolff <milian.wolff@kdab.com>2022-12-03 14:06:04 +0100
committerMilian Wolff <milian.wolff@kdab.com>2022-12-05 10:03:18 +0000
commit0e972840f4b8142b327dc32770d5a34c594ed153 (patch)
tree6c7885a53c52ccbb90de5157d1a72e3534fa5b0d
parent9f79c28d1f9ef92ecfe7a00e13d0130142c961ff (diff)
Fix clazy-range-loop-detach
Change-Id: I72ac1befe4601b90c38cade89f748a270d997e1f Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
-rw-r--r--app/demangler.cpp4
-rw-r--r--app/perftracingdata.cpp15
-rw-r--r--app/perfunwind.cpp9
-rw-r--r--tests/auto/shared/perfparsertestclient.cpp3
4 files changed, 19 insertions, 12 deletions
diff --git a/app/demangler.cpp b/app/demangler.cpp
index ce9d630..2d82344 100644
--- a/app/demangler.cpp
+++ b/app/demangler.cpp
@@ -44,7 +44,7 @@ bool Demangler::demangle(const char *mangledSymbol, char *demangleBuffer, size_t
{
// fast path, some languages (like rust since 1.37 or d) share a common prefix
// try these first
- for (const auto& demangler : m_demanglers) {
+ for (const auto& demangler : qAsConst(m_demanglers)) {
if (startsWith(mangledSymbol, demangler.prefix)) {
if (demangler.demangler(mangledSymbol, demangleBuffer, demangleBufferLength)) {
return true;
@@ -52,7 +52,7 @@ bool Demangler::demangle(const char *mangledSymbol, char *demangleBuffer, size_t
}
}
- for (const auto& demangler : m_demanglers) {
+ for (const auto& demangler : qAsConst(m_demanglers)) {
if (demangler.demangler(mangledSymbol, demangleBuffer, demangleBufferLength)) {
return true;
}
diff --git a/app/perftracingdata.cpp b/app/perftracingdata.cpp
index 2f9417a..4321268 100644
--- a/app/perftracingdata.cpp
+++ b/app/perftracingdata.cpp
@@ -85,7 +85,8 @@ bool PerfTracingData::readHeaderFiles(QDataStream &stream)
QByteArray buffer(static_cast<int>(size), Qt::Uninitialized);
stream.readRawData(buffer.data(), buffer.size());
- for (QByteArray line : buffer.split('\n')) {
+ const auto lines = buffer.split('\n');
+ for (const auto &line : lines) {
if (!line.isEmpty())
m_headerFields << readFormatField(line);
}
@@ -105,7 +106,8 @@ bool PerfTracingData::readHeaderFiles(QDataStream &stream)
static void processLine(const QByteArray &line,
const std::function<void(const QByteArray &, const QByteArray &)> &handler)
{
- for (const QByteArray &chunk : line.split('\t')) {
+ const auto chunks = line.split('\t');
+ for (const auto &chunk : chunks) {
QList<QByteArray> segments = chunk.split(':');
if (segments.size() != 2)
continue;
@@ -211,7 +213,8 @@ bool PerfTracingData::readEventFormats(QDataStream &stream, const QByteArray &sy
stream.readRawData(buffer.data(), buffer.length());
FieldStage stage = BeforeFields;
- for (const QByteArray &line : buffer.split('\n')) {
+ const auto lines = buffer.split('\n');
+ for (const auto &line : lines) {
switch (stage) {
case CommonFields:
if (line.isEmpty())
@@ -286,7 +289,8 @@ bool PerfTracingData::readFtracePrintk(QDataStream &stream)
QByteArray buffer(static_cast<int>(size), Qt::Uninitialized);
stream.readRawData(buffer.data(), buffer.length());
- for (QByteArray line : buffer.split('\n')) {
+ const auto lines = buffer.split('\n');
+ for (const auto &line : lines) {
if (!line.isEmpty()) {
QList<QByteArray> segments = line.split(':');
if (segments.length() == 2) {
@@ -310,7 +314,8 @@ bool PerfTracingData::readSavedCmdline(QDataStream &stream)
QByteArray buffer(static_cast<int>(size), Qt::Uninitialized);
stream.readRawData(buffer.data(), buffer.length());
- for (const QByteArray &line : buffer.split('\n')) {
+ const auto lines = buffer.split('\n');
+ for (const auto &line : lines) {
// Each line is prefixed with the PID it refers to
if (!line.isEmpty())
m_savedCmdlines.append(line);
diff --git a/app/perfunwind.cpp b/app/perfunwind.cpp
index e9d2b74..0128cf4 100644
--- a/app/perfunwind.cpp
+++ b/app/perfunwind.cpp
@@ -791,10 +791,11 @@ void PerfUnwind::analyze(const PerfRecordSample &sample)
}
QVector<QPair<qint32, quint64>> values;
- if (sample.readFormats().isEmpty()) {
+ const auto readFormats = sample.readFormats();
+ if (readFormats.isEmpty()) {
values.push_back({ attributesId, sample.period() });
} else {
- for (const auto& f : sample.readFormats()) {
+ for (const auto& f : readFormats) {
values.push_back({ m_attributeIds.value(f.id, -1), f.value });
}
}
@@ -1025,13 +1026,13 @@ void PerfUnwind::flushEventBuffer(uint desiredBufferSize)
std::stable_sort(m_taskEventsBuffer.begin(), m_taskEventsBuffer.end(), sortByTime<TaskEvent>);
if (m_stats.enabled) {
- for (const auto &sample : m_sampleBuffer) {
+ for (const auto &sample : qAsConst(m_sampleBuffer)) {
if (sample.time() < m_lastFlushMaxTime)
++m_stats.numTimeViolatingSamples;
else
break;
}
- for (const auto &mmap : m_mmapBuffer) {
+ for (const auto &mmap : qAsConst(m_mmapBuffer)) {
if (mmap.time() < m_lastFlushMaxTime)
++m_stats.numTimeViolatingMmaps;
else
diff --git a/tests/auto/shared/perfparsertestclient.cpp b/tests/auto/shared/perfparsertestclient.cpp
index 942d7b2..ead19aa 100644
--- a/tests/auto/shared/perfparsertestclient.cpp
+++ b/tests/auto/shared/perfparsertestclient.cpp
@@ -202,7 +202,8 @@ void PerfParserTestClient::convertToText(QTextStream &out) const
{
using Qt::dec;
using Qt::hex;
- for (const auto &sample : samples()) {
+ const auto allSamples = samples();
+ for (const auto &sample : allSamples) {
out << string(command(sample.pid).name) << '\t'
<< sample.pid << '\t' << sample.tid << '\t'
<< sample.time / 1000000000 << '.' << qSetFieldWidth(9) << qSetPadChar(QLatin1Char('0'))