From 9838d91e2d433f13c57bdae48e31ba0b909988aa Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Sat, 2 May 2020 17:16:58 -0700 Subject: Fix warning that QHash::unite is deprecated Use QMultiHash instead. renderviewbuilder.cpp:442:56: warning: 'unite' is deprecated: Use QMultiHash for hashes storing multiple values with the same key. [-Wdeprecated-declarations] Pick-To: 5.15 Change-Id: I99ab0f318b1c43b89888fffd160b5c89f9c3f9d4 Reviewed-by: Lars Knoll --- src/plugins/renderers/opengl/jobs/materialparametergathererjob.cpp | 6 +++++- src/plugins/renderers/opengl/jobs/renderviewjobutils_p.h | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/renderers/opengl/jobs/materialparametergathererjob.cpp b/src/plugins/renderers/opengl/jobs/materialparametergathererjob.cpp index 1dd26b847..66f62eda4 100644 --- a/src/plugins/renderers/opengl/jobs/materialparametergathererjob.cpp +++ b/src/plugins/renderers/opengl/jobs/materialparametergathererjob.cpp @@ -143,7 +143,11 @@ void MaterialParameterGathererJob::run() for (RenderPass *renderPass : passes) { ParameterInfoList globalParameters = parameters; parametersFromParametersProvider(&globalParameters, m_manager->parameterManager(), renderPass); - m_parameters[material->peerId()].push_back({renderPass, globalParameters}); + auto it = m_parameters.find(material->peerId()); + if (it != m_parameters.end()) + it->push_back({renderPass, globalParameters}); + else + m_parameters.insert(material->peerId(), {{renderPass, globalParameters}}); } } } diff --git a/src/plugins/renderers/opengl/jobs/renderviewjobutils_p.h b/src/plugins/renderers/opengl/jobs/renderviewjobutils_p.h index bc5bfd8aa..bd745e7a3 100644 --- a/src/plugins/renderers/opengl/jobs/renderviewjobutils_p.h +++ b/src/plugins/renderers/opengl/jobs/renderviewjobutils_p.h @@ -127,7 +127,7 @@ struct RenderPassParameterData }; QT3D_DECLARE_TYPEINFO_3(Qt3DRender, Render, OpenGL, RenderPassParameterData, Q_MOVABLE_TYPE) -using MaterialParameterGathererData = QHash>; +using MaterialParameterGathererData = QMultiHash>; Q_AUTOTEST_EXPORT void parametersFromMaterialEffectTechnique(ParameterInfoList *infoList, ParameterManager *manager, -- cgit v1.2.3