summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@qt.io>2024-04-15 15:16:15 +0300
committerSamuli Piippo <samuli.piippo@qt.io>2024-04-17 00:38:08 +0300
commita030795bc956ce4274e3562e963d59e74f2e6fd7 (patch)
tree1e72b8d8fd367087d3976a77adbc70b7f43f39cb /src/plugins/platforms
parentbd4d2786af5da27dd8ee50062fc7c934a20bf5bb (diff)
Revert "Always destroy OpenGL context when the window is destroyed"
This reverts commit 220afb358f6056a6fc091b48a38878fb98aba979. The change caused segfault after menus or dialogs were closed. The global raster compositing context is still being used by root window and cannot be deleted from child window. Pick-to: 6.7 Fixes: QTBUG-123962 Change-Id: Ie88925052f0f424617382388c587ae47570d13a7 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Diffstat (limited to 'src/plugins/platforms')
-rw-r--r--src/plugins/platforms/eglfs/api/qeglfswindow.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/plugins/platforms/eglfs/api/qeglfswindow.cpp b/src/plugins/platforms/eglfs/api/qeglfswindow.cpp
index 861dd9c5da..306d121cfb 100644
--- a/src/plugins/platforms/eglfs/api/qeglfswindow.cpp
+++ b/src/plugins/platforms/eglfs/api/qeglfswindow.cpp
@@ -152,15 +152,12 @@ void QEglFSWindow::destroy()
#ifndef QT_NO_OPENGL
QOpenGLCompositor::destroy();
+ if (qt_gl_global_share_context() == m_rasterCompositingContext)
+ qt_gl_set_global_share_context(nullptr);
+ delete m_rasterCompositingContext;
#endif
}
-#ifndef QT_NO_OPENGL
- if (qt_gl_global_share_context() == m_rasterCompositingContext)
- qt_gl_set_global_share_context(nullptr);
- delete m_rasterCompositingContext;
-#endif
-
m_flags = { };
}