summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergio Martins <sergio.martins@kdab.com>2017-02-12 23:52:16 +0000
committerSérgio Martins <sergio.martins@kdab.com>2017-02-24 16:24:59 +0000
commit929d0108dc61f7a76e14477d4451a9a3fb3ed75a (patch)
treea992f0f22a59d38d7a0d9e86f0fa729667ddedfc
parentddc878f2fc978a3b740b7ccf9258c824c6ba959a (diff)
Fix container detachments when using range loop
Fixes -Wclazy-range-loop warnings. Change-Id: I6348b259a444203afe3490ea41c149c9b6740164 Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
-rw-r--r--src/render/backend/openglvertexarrayobject.cpp4
-rw-r--r--src/render/framegraph/rendercapture.cpp2
-rw-r--r--src/render/frontend/qlevelofdetailswitch.cpp6
-rw-r--r--src/render/frontend/qrenderaspect.cpp4
-rw-r--r--src/render/io/qsceneloader.cpp6
-rw-r--r--src/render/jobs/pickboundingvolumejob.cpp6
-rw-r--r--src/render/jobs/sendbuffercapturejob.cpp2
-rw-r--r--src/render/materialsystem/shader.cpp2
-rw-r--r--src/render/picking/posteventstofrontend.cpp3
-rw-r--r--src/render/picking/qeventforward.cpp4
10 files changed, 22 insertions, 17 deletions
diff --git a/src/render/backend/openglvertexarrayobject.cpp b/src/render/backend/openglvertexarrayobject.cpp
index b88ddfb7b..eefc208d5 100644
--- a/src/render/backend/openglvertexarrayobject.cpp
+++ b/src/render/backend/openglvertexarrayobject.cpp
@@ -68,7 +68,7 @@ void OpenGLVertexArrayObject::bind()
m_ctx->m_currentVAO = this;
// We need to specify array and vertex attributes
- for (const GraphicsContext::VAOVertexAttribute &attr : m_vertexAttributes)
+ for (const GraphicsContext::VAOVertexAttribute &attr : qAsConst(m_vertexAttributes))
m_ctx->enableAttribute(attr);
if (!m_indexAttribute.isNull())
m_ctx->bindGLBuffer(m_ctx->m_renderer->nodeManagers()->glBufferManager()->data(m_indexAttribute),
@@ -85,7 +85,7 @@ void OpenGLVertexArrayObject::release()
m_vao->release();
} else {
if (m_ctx->m_currentVAO == this) {
- for (const GraphicsContext::VAOVertexAttribute &attr : m_vertexAttributes)
+ for (const GraphicsContext::VAOVertexAttribute &attr : qAsConst(m_vertexAttributes))
m_ctx->disableAttribute(attr);
m_ctx->m_currentVAO = nullptr;
}
diff --git a/src/render/framegraph/rendercapture.cpp b/src/render/framegraph/rendercapture.cpp
index 6b6c48375..1d3117c0d 100644
--- a/src/render/framegraph/rendercapture.cpp
+++ b/src/render/framegraph/rendercapture.cpp
@@ -92,7 +92,7 @@ void RenderCapture::sendRenderCaptures()
{
QMutexLocker lock(&m_mutex);
- for (const RenderCaptureDataPtr data : m_renderCaptureData) {
+ for (const RenderCaptureDataPtr data : qAsConst(m_renderCaptureData)) {
auto e = Qt3DCore::QPropertyUpdatedChangePtr::create(peerId());
e->setDeliveryFlags(Qt3DCore::QSceneChange::DeliverToAll);
e->setPropertyName("renderCaptureData");
diff --git a/src/render/frontend/qlevelofdetailswitch.cpp b/src/render/frontend/qlevelofdetailswitch.cpp
index 9a63343ed..a6d2b1530 100644
--- a/src/render/frontend/qlevelofdetailswitch.cpp
+++ b/src/render/frontend/qlevelofdetailswitch.cpp
@@ -107,8 +107,10 @@ void QLevelOfDetailSwitch::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &cha
emit currentIndexChanged(ndx);
int entityIndex = 0;
- for (Qt3DCore::QEntity *entity : entities()) {
- for (Qt3DCore::QNode *childNode : entity->childNodes()) {
+ const auto entities = this->entities();
+ for (Qt3DCore::QEntity *entity : entities) {
+ const auto childNodes = entity->childNodes();
+ for (Qt3DCore::QNode *childNode : childNodes) {
Qt3DCore::QEntity *childEntity = qobject_cast<Qt3DCore::QEntity *>(childNode);
if (childEntity) {
childEntity->setEnabled(entityIndex == ndx);
diff --git a/src/render/frontend/qrenderaspect.cpp b/src/render/frontend/qrenderaspect.cpp
index eff502f4e..81e8ff463 100644
--- a/src/render/frontend/qrenderaspect.cpp
+++ b/src/render/frontend/qrenderaspect.cpp
@@ -254,7 +254,7 @@ void QRenderAspectPrivate::registerBackendTypes()
q->registerBackendType<QEventForward>(QSharedPointer<Render::NodeFunctor<Render::EventForward, Render::EventForwardManager> >::create(m_renderer));
// Plugins
- for (Render::QRenderPlugin *plugin : m_renderPlugins)
+ for (Render::QRenderPlugin *plugin : qAsConst(m_renderPlugins))
plugin->registerBackendTypes(q, m_renderer);
}
@@ -318,7 +318,7 @@ void QRenderAspectPrivate::unregisterBackendTypes()
unregisterBackendType<QEventForward>();
// Plugins
- for (Render::QRenderPlugin *plugin : m_renderPlugins)
+ for (Render::QRenderPlugin *plugin : qAsConst(m_renderPlugins))
plugin->unregisterBackendTypes(q);
}
diff --git a/src/render/io/qsceneloader.cpp b/src/render/io/qsceneloader.cpp
index 5070bb9e5..c9506d9fa 100644
--- a/src/render/io/qsceneloader.cpp
+++ b/src/render/io/qsceneloader.cpp
@@ -198,7 +198,8 @@ void QSceneLoaderPrivate::populateEntityMap(QEntity *parentEntity)
{
// Topmost parent entity is not considered part of the scene as that is typically
// an unnamed entity inserted by importer.
- for (auto childNode : parentEntity->childNodes()) {
+ const QNodeVector childNodes = parentEntity->childNodes();
+ for (auto childNode : childNodes) {
auto childEntity = qobject_cast<QEntity *>(childNode);
if (childEntity) {
m_entityMap.insert(childEntity->objectName(), childEntity);
@@ -349,7 +350,8 @@ QComponent *QSceneLoader::component(const QString &entityName,
QSceneLoader::ComponentType componentType) const
{
QEntity *e = entity(entityName);
- for (auto component : e->components()) {
+ const QComponentVector components = e->components();
+ for (auto component : components) {
switch (componentType) {
case GeometryRendererComponent:
if (qobject_cast<Qt3DRender::QGeometryRenderer *>(component))
diff --git a/src/render/jobs/pickboundingvolumejob.cpp b/src/render/jobs/pickboundingvolumejob.cpp
index 7285bcfb7..ecb16f985 100644
--- a/src/render/jobs/pickboundingvolumejob.cpp
+++ b/src/render/jobs/pickboundingvolumejob.cpp
@@ -167,7 +167,8 @@ bool PickBoundingVolumeJob::runHelper()
m_oneEnabledAtLeast = false;
m_oneHoverAtLeast = false;
- for (auto handle : m_manager->objectPickerManager()->activeHandles()) {
+ const auto activeHandles = m_manager->objectPickerManager()->activeHandles();
+ for (auto handle : activeHandles) {
auto picker = m_manager->objectPickerManager()->data(handle);
m_oneEnabledAtLeast |= picker->isEnabled();
m_oneHoverAtLeast |= picker->isHoverEnabled();
@@ -229,7 +230,8 @@ bool PickBoundingVolumeJob::runHelper()
// Forward keyboard events
if (keyEvents.size() > 0) {
- for (Entity *e : entitiesGatherer.entities()) {
+ const QVector<Entity *> entities = entitiesGatherer.entities();
+ for (Entity *e : entities) {
ObjectPicker *picker = e->renderComponent<ObjectPicker>();
if (picker != nullptr) {
if (picker->isEventForwardingEnabled()) {
diff --git a/src/render/jobs/sendbuffercapturejob.cpp b/src/render/jobs/sendbuffercapturejob.cpp
index 3785d8238..7829931f7 100644
--- a/src/render/jobs/sendbuffercapturejob.cpp
+++ b/src/render/jobs/sendbuffercapturejob.cpp
@@ -75,7 +75,7 @@ void SendBufferCaptureJob::addRequest(QPair<Buffer *, QByteArray> request)
void SendBufferCaptureJob::run()
{
QMutexLocker locker(&m_mutex);
- for (QPair<Buffer*, QByteArray> pendingCapture : m_pendingSendBufferCaptures) {
+ for (const QPair<Buffer*, QByteArray> &pendingCapture : qAsConst(m_pendingSendBufferCaptures)) {
pendingCapture.first->updateDataFromGPUToCPU(pendingCapture.second);
}
diff --git a/src/render/materialsystem/shader.cpp b/src/render/materialsystem/shader.cpp
index 69d22297a..e534a1ffc 100644
--- a/src/render/materialsystem/shader.cpp
+++ b/src/render/materialsystem/shader.cpp
@@ -272,7 +272,7 @@ void Shader::prepareUniforms(ShaderParameterPack &pack)
const auto end = values.cend();
while (it != end) {
// Find if there's a uniform with the same name id
- for (const ShaderUniform &uniform : m_uniforms) {
+ for (const ShaderUniform &uniform : qAsConst(m_uniforms)) {
if (uniform.m_nameId == it.key()) {
pack.setSubmissionUniform(uniform);
break;
diff --git a/src/render/picking/posteventstofrontend.cpp b/src/render/picking/posteventstofrontend.cpp
index 51f986902..d75f5d6a7 100644
--- a/src/render/picking/posteventstofrontend.cpp
+++ b/src/render/picking/posteventstofrontend.cpp
@@ -60,8 +60,7 @@ PostEventsToFrontend::PostEventsToFrontend(const QVector<QEvent *> &events)
PostEventsToFrontend::~PostEventsToFrontend()
{
- for (QEvent *e : m_events)
- delete e;
+ qDeleteAll(m_events);
}
QVector<QEvent *> &PostEventsToFrontend::events()
diff --git a/src/render/picking/qeventforward.cpp b/src/render/picking/qeventforward.cpp
index cb5f9cfbb..4121e61b8 100644
--- a/src/render/picking/qeventforward.cpp
+++ b/src/render/picking/qeventforward.cpp
@@ -273,8 +273,8 @@ void QEventForward::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change)
= qSharedPointerCast<Qt3DCore::QPropertyUpdatedChange>(change);
if (e->type() == Qt3DCore::PropertyUpdated && d->m_target != nullptr) {
if (e->propertyName() == QByteArrayLiteral("events")) {
- PostEventsToFrontendPtr postedEvents = e->value().value<PostEventsToFrontendPtr>();
- for (QEvent *event : postedEvents->events())
+ const QVector<QEvent *> postedEvents = e->value().value<PostEventsToFrontendPtr>()->events();
+ for (QEvent *event : postedEvents)
QCoreApplication::sendEvent(d->m_target, event);
}
}