mirror of
https://github.com/obsproject/obs-studio.git
synced 2026-01-20 04:08:54 -05:00
This hooks the platform specific events in order to close the obs display more accurately. Earlier attempts on hooking visiblity, but Qt does not ensure that visibility is changed before the surface is destroyed. So we ended up racing with the EGL driver and on some drivers if you lose the race they hang. Also only force display creation if the display is actually visible. When a source type is not video/drawable (or is missing) this would force the display to be created for the blank window and also hang. Finally force closure of the preview displays during scene cleanup to avoid similar ordering issues in Qt. Qt has even less order guarentees during close and we are sure that displays are no longer needed at this point in the UI.
275 KiB
275 KiB