[vlc-commits] [Git][videolan/vlc][master] qt: wait until setup is done in `CompositorDirectComposition::makeMainInterface()`

Steve Lhomme (@robUx4) gitlab at videolan.org
Sun Jul 7 13:00:34 UTC 2024



Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
7c1b0304 by Fatih Uzunoglu at 2024-07-07T12:43:45+00:00
qt: wait until setup is done in `CompositorDirectComposition::makeMainInterface()`

`CompositorDirectComposition::setupVoutWindow()` may be called before setup is
completed, yielding an assertion failure.

- - - - -


1 changed file:

- modules/gui/qt/maininterface/compositor_dcomp.cpp


Changes:

=====================================
modules/gui/qt/maininterface/compositor_dcomp.cpp
=====================================
@@ -230,14 +230,17 @@ bool CompositorDirectComposition::makeMainInterface(MainCtx* mainCtx)
                     connect(quickViewPtr,
                             &QQuickWindow::frameSwapped, // At this stage, we can be sure that QRhi and QRhiSwapChain are valid.
                             this,
-                            &CompositorDirectComposition::setup,
+                            [this, &eventLoop]() {
+                                setup();
+                                eventLoop.quit();
+                            },
                             Qt::SingleShotConnection);
                 }
                 else
                 {
                     appropriateGraphicsApi = false;
+                    eventLoop.quit();
                 }
-                eventLoop.quit();
         }, static_cast<Qt::ConnectionType>(Qt::SingleShotConnection | Qt::DirectConnection));
 
     connect(quickViewPtr,



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/7c1b03049679d57f57b8d5a1bf0407f0aebc483f

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/7c1b03049679d57f57b8d5a1bf0407f0aebc483f
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list