summaryrefslogtreecommitdiffstats
path: root/src/render/backend/renderer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/render/backend/renderer.cpp')
-rw-r--r--src/render/backend/renderer.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/render/backend/renderer.cpp b/src/render/backend/renderer.cpp
index dbb91359c..e2d4ef768 100644
--- a/src/render/backend/renderer.cpp
+++ b/src/render/backend/renderer.cpp
@@ -378,6 +378,8 @@ void Renderer::shutdown()
{
// TO DO: Check that this works with iOs and other cases
if (m_surface) {
+ m_running.fetchAndStoreOrdered(0);
+
m_graphicsContext->makeCurrent(m_surface);
// Stop and destroy the OpenGL logger
if (m_debugLogger) {
@@ -958,6 +960,7 @@ Attribute *Renderer::updateBuffersAndAttributes(Geometry *geometry, RenderComman
Attribute *indexAttribute = Q_NULLPTR;
uint estimatedCount = 0;
+ m_dirtyAttributes.reserve(m_dirtyAttributes.size() + geometry->attributes().size());
Q_FOREACH (const QNodeId &attributeId, geometry->attributes()) {
// TO DO: Improvement we could store handles and use the non locking policy on the attributeManager
Attribute *attribute = m_nodesManager->attributeManager()->lookupResource(attributeId);