diff options
author | Anton Kudryavtsev <a.kudryavtsev@netris.ru> | 2016-01-15 15:14:13 +0300 |
---|---|---|
committer | Anton Kudryavtsev <a.kudryavtsev@netris.ru> | 2016-01-15 14:43:56 +0000 |
commit | 8d0d5053addd1ba1bef131335160bd91449644e1 (patch) | |
tree | 84bebeedaa2cd89c554fd928a7798a4d4315da43 | |
parent | 201f84f204dc920023ceb64a2aab624f6ab481c8 (diff) |
Plugins: fix expensive iteration over QHash::keys()
... and QMultiHash::keys()
Change-Id: I616c486c05471fc514595f9cb446953331c4eb90
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
-rw-r--r-- | src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp | 5 | ||||
-rw-r--r-- | src/plugins/qmltooling/qmldbg_profiler/qqmlprofilerservice.cpp | 6 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp b/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp index c563a97fe2..70fb81526d 100644 --- a/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp +++ b/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp @@ -178,9 +178,8 @@ void QV4DebuggerAgent::removeBreakPoint(int id) void QV4DebuggerAgent::removeAllBreakPoints() { - QList<int> ids = m_breakPoints.keys(); - foreach (int id, ids) - removeBreakPoint(id); + for (auto it = m_breakPoints.keyBegin(), end = m_breakPoints.keyEnd(); it != end; ++it) + removeBreakPoint(*it); } void QV4DebuggerAgent::enableBreakPoint(int id, bool onoff) diff --git a/src/plugins/qmltooling/qmldbg_profiler/qqmlprofilerservice.cpp b/src/plugins/qmltooling/qmldbg_profiler/qqmlprofilerservice.cpp index 462bd5e394..b41b8e34fe 100644 --- a/src/plugins/qmltooling/qmldbg_profiler/qqmlprofilerservice.cpp +++ b/src/plugins/qmltooling/qmldbg_profiler/qqmlprofilerservice.cpp @@ -375,8 +375,10 @@ void QQmlProfilerServiceImpl::stateAboutToBeChanged(QQmlDebugService::State newS // Stop all profiling and send the data before we get disabled. if (newState != Enabled) { - foreach (QJSEngine *engine, m_engineProfilers.keys()) - stopProfiling(engine); + for (auto it = m_engineProfilers.keyBegin(), end = m_engineProfilers.keyEnd(); + it != end; ++it) { + stopProfiling(*it); + } } } |