Hi,

I am working on a rather large application using QQuickWidget and Coin3d to 
mention the most "dangerous" components, therefore it is not feasible to 
produce a minimal version to show my problem anytime soon. The operating system 
is Windows 10 64 bit using compiler msvc2017_64.

Until now, the project was compiled using Qt-5.9.3, but now Qt-5.12.0 should be 
used. After a number of fixes to compensate for behavioral changes, the release 
build worked fine, but the debug build crashes as shown in the next line:

ASSERT: "m_context->openglContext() == QOpenGLContext::currentContext()" in 
file scenegraph\coreapi\qsgbatchrenderer.cpp, line 2591

This happens in the event loop during a regular rendering call of the 
QQuickWidget, as can be seen in the stack trace (I hope the formatting will be 
preserved):

1   qt_message_fatal                             qlogging.cpp                
1872 0x7ffdb5feb16b 
2   QMessageLogger::fatal                        qlogging.cpp                
887  0x7ffdb5fe9942 
3   qt_assert                                    qglobal.cpp                 
3199 0x7ffdb5fda65b 
4   QSGBatchRenderer::Renderer::render           qsgbatchrenderer.cpp        
2593 0x7ffdb87345a7 
5   QSGRenderer::renderScene                     qsgrenderer.cpp             
245  0x7ffdb872d7c5 
6   QSGRenderer::renderScene                     qsgrenderer.cpp             
191  0x7ffdb872d9d1 
7   QSGDefaultRenderContext::renderNextFrame     qsgdefaultrendercontext.cpp 
184  0x7ffdb87b0691 
8   QQuickWindowPrivate::renderSceneGraph        qquickwindow.cpp            
488  0x7ffdb88717ec 
9   QQuickRenderControl::render                  qquickrendercontrol.cpp     
344  0x7ffdb89ea698 
10  QQuickWidgetPrivate::render                  qquickwidget.cpp            
290  0x7ffe02ce8a8c 
11  QQuickWidgetPrivate::renderSceneGraph        qquickwidget.cpp            
342  0x7ffe02ce8da1 
12  QQuickWidget::timerEvent                     qquickwidget.cpp            
1130 0x7ffe02ce6011 
13  QObject::event                               qobject.cpp                 
1231 0x7ffdb6425b93 
14  QWidget::event                               qwidget.cpp                 
9334 0x7ffdb915cc83 
15  QQuickWidget::event                          qquickwidget.cpp            
1526 0x7ffe02ce7231 
16  QApplicationPrivate::notify_helper           qapplication.cpp            
3752 0x7ffdb90fbf3e 
17  QApplication::notify                         qapplication.cpp            
3703 0x7ffdb90f9694 
18  QCoreApplication::notifyInternal2            qcoreapplication.cpp        
1061 0x7ffdb63ccc56 
19  QCoreApplication::sendEvent                  qcoreapplication.cpp        
1452 0x7ffdb63ca992 
20  QEventDispatcherWin32Private::sendTimerEvent qeventdispatcher_win.cpp    
455  0x7ffdb64904bd 
... <More>                                                                      
                 

I removed all the active Coin3d code and introduced stuff like 
QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts); without any change, 
so it should really be just in the Qt code. I tried all versions of Qt and 
found out, that Qt versions since Qt-5.9.5 show this problem. Note, that only 
Debug builds are affected, Release builds do not crash.

Does anyone have any idea, what could be causing this and how to get around it? 
Thank you for any hints!
_______________________________________________
Interest mailing list
Interest@qt-project.org
https://lists.qt-project.org/listinfo/interest

Reply via email to