summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMauro Persano <mauro.persano@kdab.com>2020-02-13 16:11:08 -0300
committerMauro Persano <mauro.persano@kdab.com>2020-02-18 04:57:55 -0300
commitb769deaf57645f533cccb352722ea7b79475a2ea (patch)
tree2f6dc5b7553a7b0e185675a307004fe6ba4a1a38
parentc6fecd32f8dfe4d72a7f059f83d69e61d5ded64d (diff)
Fix OnDemand rendering crash when using QQuickWidget
Restore the original GL context when handling the QQuickWindow::beforeSynchronizing signal to prevent crashes. Fixes: QTBUG-82152 Change-Id: Ibcf3f7fbc1d9ec7b83a76fd617d7aa77ab82ba14 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
-rw-r--r--src/quick3d/imports/scene3d/scene3drenderer.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/quick3d/imports/scene3d/scene3drenderer.cpp b/src/quick3d/imports/scene3d/scene3drenderer.cpp
index fafeeedf4..312dc41cb 100644
--- a/src/quick3d/imports/scene3d/scene3drenderer.cpp
+++ b/src/quick3d/imports/scene3d/scene3drenderer.cpp
@@ -288,6 +288,7 @@ void Scene3DRenderer::beforeSynchronize()
// SceneGraph update for nothing
if (m_skipFrame) {
m_skipFrame = false;
+ ContextSaver saver;
static_cast<QRenderAspectPrivate*>(QRenderAspectPrivate::get(m_renderAspect))->renderSynchronous(false);
return;
}