Details
-
Bug
-
Resolution: Out of scope
-
P2: Important
-
None
-
5.11.0
-
None
Description
I've written a program, demonstrating strange behavior, when some OpenGL errors cause deadlock, if a QOpenGLDebugLogger::messageLogged signal has being emitted in an OpenGL engine thread with DirectConnection, and its slot emits another signal with BlockingQueueConnection, so the GUI thread enteres this last signal slot and calls QMessageBox::warning there.
My idea is to block both the engine and the GUI threads, when i want to show some message manually or an OpenGL error has occured, so i can click OK on a Message Box, and so continue the GUI thread executing, and so the engine thread executing.
I suppose that this is a bug because not all OpenGL errors triggering QOpenGLDebugLogger::messageLogged signal lead to a deadlock in the GUI thread. The program shows this different behavior too. And as this behavior is different in same situations (error handling) it seems like unexpected/undefined behavior for me.