diff options
author | Jøger Hansegård <joger.hansegard@qt.io> | 2024-03-10 18:43:54 +0100 |
---|---|---|
committer | Jøger Hansegård <joger.hansegard@qt.io> | 2024-03-28 14:54:50 +0100 |
commit | 7efc9f9b6d058b6e7e6c768b94abf602719b31b4 (patch) | |
tree | 975b13191d6644cfc33f30aa8b05c22c7b0416d1 /src/plugins/gstreamer/mediacapture | |
parent | 6351b52b24ec5c8fa37abb4d394a4ca40d6fcf51 (diff) |
This patch uses a specialized application static variable to tie backend
lifetime to the Qt application lifetime if an application is present.
This ensures that system resources are released before static
destruction, and prevents abrupt termination on Windows during static
destruction. This is according to Windows Media Foundation's
documentation that states that WMF classes shall not be released during
static destruction.
If Qt Multimedia features are used without a Qt Application object, the
lifetime of the multimedia backend remains as before, and destruction
takes place as part of static destruction.
As a side effect, this change fixes a crash if Qt Multimedia features
are used after recreating the Qt Application.
Fixes: QTBUG-120198
Pick-to: 6.7 6.6 6.5
Change-Id: I570743d6462e27630d8f29dc60cfa414c8cbc17d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Diffstat (limited to 'src/plugins/gstreamer/mediacapture')
0 files changed, 0 insertions, 0 deletions