BALL-Project / ball

The Biochemical Algorithms Library
GNU Lesser General Public License v2.1
72 stars 31 forks source link

BALLView won't start with Qt 5.7.{0,1} (Linux/X11) #630

Closed tkemmer closed 7 years ago

tkemmer commented 7 years ago

In Qt 5.7.{0,1}, creating (legacy) QGLWindows with QGL::StereoBuffers results in a segfault on Linux/X11, preventing BALLView from starting:

ASAN:DEADLYSIGNAL
=================================================================
==8995==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000008 (pc 0x7fe1c832703c bp 0x60f0000310f0 sp 0x7ffebfbf1180 T0)
    #0 0x7fe1c832703b  (/usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so+0x903b)
    #1 0x7fe1c7d73135 in QXcbWindow::create() (/usr/lib64/libQt5XcbQpa.so.5+0x57135)
    #2 0x7fe1c7d5f45f in QXcbIntegration::createPlatformWindow(QWindow*) const (/usr/lib64/libQt5XcbQpa.so.5+0x4345f)
    #3 0x7fe1d9cd0158 in QWindowPrivate::create(bool) (/usr/lib64/libQt5Gui.so.5+0xfb158)
    #4 0x7fe1e8d57b59 in QGLContext::chooseContext(QGLContext const*) (/usr/lib64/libQt5OpenGL.so.5+0x24b59)
    #5 0x7fe1e8d56629 in QGLContext::create(QGLContext const*) (/usr/lib64/libQt5OpenGL.so.5+0x23629)
    #6 0x7fe1e8d544ee in QGLWidget::setContext(QGLContext*, QGLContext const*, bool) (/usr/lib64/libQt5OpenGL.so.5+0x214ee)
    #7 0x7fe1e8d56984 in QGLWidgetPrivate::initContext(QGLContext*, QGLWidget const*) (/usr/lib64/libQt5OpenGL.so.5+0x23984)
    #8 0x7fe1e7728230 in BALL::VIEW::GLRenderWindow::GLRenderWindow(QWidget*, char const*, QFlags<Qt::WindowType>) (/home/thomas/git/apps/ball/build/lib/libVIEW.so.1.5+0x6af230)
    #9 0x7fe1e77ecfc7 in BALL::VIEW::Scene::Scene(QWidget*, char const*, QFlags<Qt::WindowType>) (/home/thomas/git/apps/ball/build/lib/libVIEW.so.1.5+0x773fc7)
    #10 0x4331f8 in BALL::Mainframe::Mainframe(QWidget*, char const*) (/home/thomas/git/apps/ball/build/bin/BALLView+0x4331f8)
    #11 0x416db3 in main (/home/thomas/git/apps/ball/build/bin/BALLView+0x416db3)
    #12 0x7fe1d7dc264f in __libc_start_main (/lib64/libc.so.6+0x2064f)
    #13 0x417c28 in _start (/home/thomas/git/apps/ball/build/bin/BALLView+0x417c28)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (/usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so+0x903b) 
==8995==ABORTING

This issue has been reported upstream (https://bugreports.qt.io/browse/QTBUG-55291) and is fixed in Qt 5.7.2.