summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYuya Nishihara <yuya.nishihara@qt.io>2022-02-14 13:16:37 +0900
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2022-02-15 01:12:56 +0000
commitadaa37ad7d1fc12eb2e9631fe7237d1d705c21bd (patch)
tree9d59b837b0c23cc780d524872d7288df92fe4767 /src
parentfbfd7b7782750dd746db739f5e16a811497be390 (diff)
Reset OpenGL state derived from the previous frame
IIUC, there's no guarantee that the OpenGL context is "clean" state on QQuickWindow::beforeRendering(). And series color could get wrong if blend mode is unexpected, for example. Fixes: QTBUG-100810 Change-Id: Iae1eb9025c8740c5e63e10d9339a266ce8e5d338 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> (cherry picked from commit 61011ff6c134f536c6c29f97daf1b26b51d63639) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src')
-rw-r--r--src/chartsqml2/declarativeopenglrendernode.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/chartsqml2/declarativeopenglrendernode.cpp b/src/chartsqml2/declarativeopenglrendernode.cpp
index 89629f3d..c3857d30 100644
--- a/src/chartsqml2/declarativeopenglrendernode.cpp
+++ b/src/chartsqml2/declarativeopenglrendernode.cpp
@@ -393,6 +393,8 @@ void DeclarativeOpenGLRenderNode::renderVisual()
// Must be called on render thread as response to beforeRendering signal
void DeclarativeOpenGLRenderNode::render()
{
+ // Reset blend function, etc. derived from the previous frame.
+ QQuickOpenGLUtils::resetOpenGLState();
if (m_renderNeeded) {
if (m_xyDataMap.size()) {
if (!m_program)