Details
-
Bug
-
Resolution: Cannot Reproduce
-
P2: Important
-
None
-
5.12.0
-
None
-
MacOS. High Sierra (10.13.x), Mojave (10.14.x)
Description
Sample app with reproducible test case attached. I think this may be related to QTBUG-71776? Basically, connecting QOpenGLWidget::frameSwapped() to QOpenGLWidget::update() can cause QProcess to hang (QProcess::finished() is never emitted).
This bug is definitely reproducible, but it doesn't occur every single time the test app is launched: it is nevertheless easy enough to reproduce (one launch in two or three) and enough of a problem (this is a showstopper: the user has to quit the app and relaunch it) that I thought it merited a report.
Instructions:
1)- locate a mac (this bug has been observed on at least a half-dozen different macs running 10.13.6 and 10.14.2) with Qt 5.12. windows/MSVC doesn't appear to exhibit this problem.
2)- build & run the attached test app
3)- if the app exits automatically, then the bug did not manifest. if the app does not exit- if you have to quit it manually or force it to quit- then the bug has manifested, and QProcess::finished() never got emitted. just keep launching the test app until it doesn't quit by itself- it should only take one or two tries, this is very reproducible!
4)- Comment out line 17- the line that connects QOpenGLWidget::frameSwapped() to QOpenGLWidget::update()- then rebuild the app, and observe that the problem disappears completely.