diff options
author | Yuya Nishihara <yuya.nishihara@qt.io> | 2022-02-14 13:16:37 +0900 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-02-15 01:12:56 +0000 |
commit | adaa37ad7d1fc12eb2e9631fe7237d1d705c21bd (patch) | |
tree | 9d59b837b0c23cc780d524872d7288df92fe4767 /src | |
parent | fbfd7b7782750dd746db739f5e16a811497be390 (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.cpp | 2 |
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) |